我是javascript语言的新手并遇到问题:
我有一个脚本点击链接,点击20次时没有显示此链接。
<script type="text/javascript">
var compteur=0;
function submitOnce()
{
var i,h5s = document.getElementsByTagName('h5'), nbr = h5s.length;
compteur +=1;
if (compteur==20){
for (i=0;i<nbr;i++) {
document.getElementsByTagName("h5")[i].style.visibility = "hidden";
document.getElementById("quota").style.display = "block";
}
};
};
</script>
现在,如果用户导航到网站的其他部分,则会重置计数。所以我想将计数结果存储在cookie中。
我找到了一个脚本,用于描述存储cookie中网站访问次数的过程。
<script language="JavaScript">
<!--
function cherchevaleur()
{
var valeur = "";
if(document.cookie)
{
valeurdepart = document.cookie.indexOf("=") + 1;
valeurfin = document.cookie.indexOf(";");
if(valeurfin == -1) valeurfin = document.cookie.length;
valeur = document.cookie.substring(valeurdepart,valeurfin);
}
return valeur;
}
function fixervaleur(indic, valeur, expire)
{
var maintenant = new Date();
var temps = new Date(maintenant.getTime() + expire);
document.cookie = indic+"="+valeur+"; expires="+temps.toGMTString()+";";
}
function compteur()
{
var tpsexpire = 1000*60*60*24*1;
var nombre = cherchevaleur();
var compte = 0;
if(nombre != "") compte = parseInt(nombre);
if(document.cookie)
{
compte = compte + 1;
fixervaleur("compte",compte,tpsexpire);
}
else
{
compte = 1;
fixervaleur("compte",compte,tpsexpire);
}
alert("C'est votre " + compte + "ème visite sur cette page!");
}
//-->
</script>
但我不明白如何插入我的计数脚本。有人能帮助我理解吗?
由于
答案 0 :(得分:0)
您可以使用JavaScript的Setcookies
和Getcookies
函数在Cookie中读取和写入值...
function setCookie(c_name, value, exdays) {
var exdate = new Date();
exdate.setDate(exdate.getDate() + exdays);
var c_value = escape(value) + ((exdays == null) ? "" : "; expires=" + exdate.toUTCString());
document.cookie = c_name + "=" + c_value + "; path=/";
}
function getCookie(c_name) {
var i, x, y, ARRcookies = document.cookie.split(";");
for (i = 0; i < ARRcookies.length; i++) {
x = ARRcookies[i].substr(0, ARRcookies[i].indexOf("="));
y = ARRcookies[i].substr(ARRcookies[i].indexOf("=") + 1);
x = x.replace(/^\s+|\s+$/g, "");
if (x == c_name) {
return unescape(y);
}
}
}