2010-06-24 17 views
1

我有使用这样的JavaScript弹出效果的网站:只有一个弹出...帮助我

<script type="text/javascript"> 
    var GB_ROOT_DIR = "greybox/"; 
</script> 
<script src="greybox/AJS.js" type="text/javascript"></script> 
<script src="greybox/AJS_fx.js" type="text/javascript"></script> 
<script src="greybox/gb_scripts.js" type="text/javascript"></script> 
<link href="greybox/gb_styles.css" type="text/css" rel="stylesheet"> 
<script language="JAVASCRIPT"> 

function loadWindow(){ 
    GB_showCenter('Free Report!', 'http://www.signupformlocation.com/popup/signup.php', 420, 570); 
} 

window.onload = loadWindow; 

    </script> 

但每次我的客人去到首页,我的弹出总是显示。如何使这个弹出只显示一次?

请帮我

回答

4

你可以使用cookies和jQuery

<script src="js/jquery.cookie.js" type="text/javascript"></script> 
<script> 
function loadWindow() { 
    if ($.cookie('popup_flag') != 'true') { 
     GB_showCenter('Free Report!', 'http://www.signupformlocation.com/popup/signup.php', 420, 570); 
     $.cookie('popup_flag', 'true'); 
    } 
} 
</script> 
+0

嗨kgb,谢谢你的回答... Bytheway ..如何获得js/jquery.cookie.js?在哪里下载这些文件并添加到我的服务器? 感谢之前 – Rudi 2010-06-24 10:37:32

+0

jquery.com,更具体地说 - http://plugins.jquery.com/files/jquery.cookie.js.txt。将其保存为js ... – 2010-06-24 10:46:47

+0

It Works perfect .. 现在..如何设置过期的cookies? – Rudi 2010-06-24 11:03:41

0

个人而言,我会用JStorage,它的一个HTML5的jQuery插件的使用本地上最流行的浏览器存储去。

例子:

var loadWindows = function() 
{ 
    if(!$.jSotreage.get('welcome_flag')) 
    { 
     GB_ShowCentre('Free Support!') // Blah 
     $.jStorage.set('welcome_flag',true); 
    } 
} 

使用JSON序列化在本地存储的所有数据: -

jStorage:http://plugins.jquery.com/project/jStorage

草案:http://dev.w3.org/html5/webstorage/

没有jQuery的:Storing Objects in HTML5 localStorage

您可以存储大约5MB每个域名,因此这将是人为的,应该在javascript环境中接管cookie的使用。