我想要做的是弹出窗口在用户访问该页面时只显示一次 但它每次刷新页面时都向我显示,我也需要它不警报我需要弹出窗口
请告知
//Alert message once script- By JavaScript Kit
//Credit notice must stay intact for use
//Visit http://javascriptkit.com for this script
//specify message to alert
var alertmessage="Welcome to JavaScript Kit! \n http://javascriptkit.com"
///No editing required beyond here/////
//Alert only once per browser session (0=no, 1=yes)
var once_per_session=1
function get_cookie(Name) {
var search = Name + "="
var returnvalue = "";
if (document.cookie.length > 0) {
offset = document.cookie.indexOf(search)
if (offset != -1) { // if cookie exists
offset += search.length
// set index of beginning of value
end = document.cookie.indexOf(";", offset);
// set index of end of cookie value
if (end == -1)
end = document.cookie.length;
returnvalue=unescape(document.cookie.substring(offset, end))
}
}
return returnvalue;
}
function alertornot(){
if (get_cookie('alerted')==''){
loadalert()
document.cookie="alerted=yes"
}
}
function loadalert(){
alert(alertmessage)
}
if (once_per_session==0)
loadalert()
else
alertornot()
</script>
答案 0 :(得分:0)
你如何运行你的代码? 如果您从本地计算机将其作为浏览器中的文件运行,例如
file://localhost/../../../file.html
您无法从javascript保存Cookie。
您需要在网络服务器上运行代码,并使用http。
访问代码http://localhost/../../../file.html
w3schools有一些非常好的例子: http://www.w3schools.com/js/js_cookies.asp
e.g
function setCookie(cname,cvalue,exdays) {
var d = new Date();
d.setTime(d.getTime()+(exdays*24*60*60*1000));
var expires = "expires="+d.toGMTString();
document.cookie = cname + "=" + cvalue + "; " + expires;
}