使用带有jquery cookie的fancybox
Using fancybox w/ jquery cookie
我在 http://cobosboutique.com 加载页面时有花哨的框加载。我想添加一个只允许它每 7 天加载一次的 cookie。我找到了这个答案 https://stackoverflow.com/questions/23431862/fancybox-popup-once-time-for-session#=,但是当我使用它时,我收到一个错误,说内容无法加载。我尝试对该线程发表评论,但我没有足够的积分来做到这一点。有没有人知道是什么原因造成的?我现在已经删除了 cookie 的代码。但这是代码。
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<script src="../template/js/jquery.cookie.js"></script>
<link rel="stylesheet" href="../template/fancybox/source/jquery.fancybox.css?v=2.1.5" type="text/css" media="screen" />
<script type="text/javascript" src="../template/fancybox/source/jquery.fancybox.pack.js?v=2.1.5"></script>
<link rel="stylesheet" href="../template/fancybox/source/helpers/jquery.fancybox-thumbs.css?v=1.0.7" type="text/css" media="screen" />
<script type="text/javascript" src="../template/fancybox/source/helpers/jquery.fancybox-thumbs.js?v=1.0.7"></script>
<script type="text/javascript">
function openFancybox() {
setTimeout(function () {
$('#yt').trigger('click');
}, 500);
};
</script>
<script type="text/javascript">
$(document).ready(function () {
var visited = $.cookie('visited');
if (visited == 'yes') {
return false; // second page load, cookie active
} else {
openFancybox(); // first page load, launch fancybox
}
$.cookie('visited', 'yes', {
expires: 0 // the number of days cookie will be effective
});
$("#yt").click(function () {
$.fancybox({
href: this.href,
type: "inline"
});
return false;
});
});
</script>
<a class="fancybox" href="#yt">test</a>
<div id="yt" style="display:none; text-align: center;"><h2>VIP TEXT CLUB!</h2>
<h3>Get exclusive access to sales and new arrivals!</h3>
<h3>Text "COBO" to 51660 and receive 10% off your entire purchase! </h3>
<h3>10% offer only applies to first time text club subscribers.</h3></div>
请记住
,#yt
是目标内容的ID(应该在fancybox中的隐藏div
),因此您无法将click
事件绑定并触发到该选择器,而是具有类fancybox
(触发器元素)的事件,该选择器实际上指向#yt
选择器:
<a class="fancybox" href="#yt">test</a>
因此,在您的openFancybox()
函数中,您需要替换此行
$('#yt').trigger('click');
。由这个
$('.fancybox').trigger('click');
然后将click
事件绑定到.fancybox
替换此行
$("#yt").click(function () {
。由这个
$(".fancybox").click(function () {
参见 JSFIDDLE
相关文章:
- Fancybox是否将Click事件静音
- 在jquery中为显示/隐藏设置cookie
- 按下按钮时保存cookie
- 需要帮助谷歌地图方向面板在FancyBox中显示
- 如何在Analytics.js中始终了解最新的cookie过期时间
- php httponly cookie在浏览器关闭时被删除
- 如何在提交表单时将PHP变量传递到Javascript cookie中
- CORS-服务器端cookie没有保存在chrome浏览器上
- 嵌套到另一个函数中的Fancybox函数;不起作用
- 如何在用户按下F5键或单击浏览器时显示自定义的fancybox's后退/关闭按钮
- 如何为后台更改程序代码设置cookie
- 动态加载fancybox并将其连接
- 如何从另一个域加载cookie
- 使用jquery cookie的第三方cookie
- 当有许多形式时,Fancybox脚本不起作用
- 无法在基于Cordova的应用程序中读取Set Cookie标头
- 如何在Javascript中将单选按钮值保存到cookie中
- cookie加载事件页面重定向
- 使用带有jquery cookie的fancybox
- 禁用带有Cookie的Fancybox弹出窗口