JS大虾请进 只在页面第一次打开的时候运行一次的js
想要写一个JS只能在页面A打开的时候运行一次,再刷新就不再运行。自己写的代码如下:functionopenpopup(){//打开页面时运行的一次性操作}function...
想要写一个JS只能在页面A打开的时候运行一次,再刷新就不再运行。自己写的代码如下:
function openpopup(){ //打开页面时运行的一次性操作 } 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; } $(document).ready( function(){ if (get_cookie("poppped")==""){ openpopup(); document.cookie="poppped=no"; }; });打开页面A的时候,js运行了一次,按F5刷新整个页面A,JS也不会运行了,可是当按刷新按钮来刷新那个红色的局部区域的时,JS还是再运行了一次,请问各位大虾有木有办法解决啊??只想打开页面A的时候JS运行一次就可以咯,即使在局部刷新JS也不会再运行??本人是菜鸟,希望大虾带上代码和注释,万分感谢 展开
function openpopup(){ //打开页面时运行的一次性操作 } 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; } $(document).ready( function(){ if (get_cookie("poppped")==""){ openpopup(); document.cookie="poppped=no"; }; });打开页面A的时候,js运行了一次,按F5刷新整个页面A,JS也不会运行了,可是当按刷新按钮来刷新那个红色的局部区域的时,JS还是再运行了一次,请问各位大虾有木有办法解决啊??只想打开页面A的时候JS运行一次就可以咯,即使在局部刷新JS也不会再运行??本人是菜鸟,希望大虾带上代码和注释,万分感谢 展开
1个回答
展开全部
你的代码没有什么大问题,是浏览器问题,webkit浏览器只有服务器的cookie才能写入!以下是根据你的代码优化过的,在firefox和IE下正常运行,在chrome和opera等浏览器就不可以,你可以在本地构建一个服务器,进行测试.打一下广告,我的博客时wwwyeebingcom,有问题可以留言找我
function openpopup(){
alert("hello");
}
function getCookie(Name) {
var cookieName = encodeURIComponent(Name) + "=", //注cookie的名和值都是经过URL编码的,所有这里要用函数编码
returnvalue = "",
cookieStart=document.cookie.indexOf(cookieName),
cookieEnd=null;
if (cookieStart>-1) {
cookieEnd = document.cookie.indexOf(";",cookieStart);
if (cookieEnd == -1){
cookieEnd = document.cookie.length;
}
returnvalue=decodeURIComponent(document.cookie.substring(cookieStart+cookieName.length, cookieEnd)); //对应的解码
}
return returnvalue;
}
window.onload=function(){
if(getCookie("poppped")==""){
openpopup();
document.cookie="poppped=no;"
}
}
function openpopup(){
alert("hello");
}
function getCookie(Name) {
var cookieName = encodeURIComponent(Name) + "=", //注cookie的名和值都是经过URL编码的,所有这里要用函数编码
returnvalue = "",
cookieStart=document.cookie.indexOf(cookieName),
cookieEnd=null;
if (cookieStart>-1) {
cookieEnd = document.cookie.indexOf(";",cookieStart);
if (cookieEnd == -1){
cookieEnd = document.cookie.length;
}
returnvalue=decodeURIComponent(document.cookie.substring(cookieStart+cookieName.length, cookieEnd)); //对应的解码
}
return returnvalue;
}
window.onload=function(){
if(getCookie("poppped")==""){
openpopup();
document.cookie="poppped=no;"
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询