2014-10-06 68 views
0

我试图在Fancybox的主页上加载视频。如果您在过去30天内访问过网站,请使用Cookie不加载。在Wordpress中加载Cookie的Fancybox

这是一个WordPress的网站,所以我把所有的“$”改为“jQuery”。我将所有这些脚本完全按照您在Footer.php文件底部关闭body标签之前的最后一件事情来看待。我收到错误“jQuery.cookie不是函数”。我不是一个真正的编码器,所以假设我不知道任何基本的脚本。

我认为这应该可行,但事实并非如此。

<!-- Start video popup cookie script --> 
<script src='http://cdn.jsdelivr.net/cookies.js/0.4.0/cookies.min.js'></script> 

<script> 
jQuery(document).ready(function(jQuery) { 
jQuery(function() { 
    if (jQuery.cookie('mycookie')==='true') { 
     // it hasn't been thirty days yet 
    } else { 
    jQuery.fancybox(
     'http://www.youtube.com/embed/oWCN8HvsULg?rel=0&wmode=transparent&autoplay=1', 
     { 
      'autoDimensions' : false, 
      'width'    : 800, 
      'height'   : 600, 
      'transitionIn'  : 'none', 
      'transitionOut'  : 'none' 
     } 
    ); 
} 
}); 

// set cookie to expire in 30 days 
jQuery.cookie('mycookie', 'true', { expires: 30}); 
}); 
</script> 
<!--end Video popup --> 

感谢您的帮助。

+0

假的问题,你之前的cookie的插件加载jQuery库? – benjasHu 2014-10-06 20:32:04

+0

BenjasHu,以上所有代码只出现在之上。所以是的?我很确定它是,但它在Wordpress安装的footer.php文件中。 – user2636033 2014-10-06 22:09:47

回答

0

我不认为你的cookie脚本是一个jQuery插件。改为尝试Cookies('mycookie', 'true', { expires: 30});

+0

克莱顿,这里是一个链接到jQuery Cookie脚本... http://cdn.jsdelivr.net/cookies.js/0.4.0/cookies.min.js ...这是错误的吗?谢谢。 我没有尝试过你的建议没有区别。 – user2636033 2014-10-06 22:15:13

+0

您可以使用该脚本。你只是说错了。这不是一个jQuery插件,所以不要使用jQuery.cookie – 2014-10-06 22:16:24

+0

Ohhhh。哇,你是对的。我不知道它不是jQuery Cookies。谢谢。我会看看cookies.js的文档。 – user2636033 2014-10-06 22:19:20

0

我明白了。我需要在视频链接中添加一个id(#vidBtnDan)(未在下面显示),并将文件jquery.cookies.js的名称更改为jq.cookies.js,Wordpress将不会使用jquery.cookies.js原因。此外,Wordpress不会在代码中使用$,因此您需要将所有“$”更改为“jQuery”。

这里是代码...

<!-- start video popup scripts --> 
<script src="wp-includes/js/jquery/jq.cookie.js"></script> 

<a id="inline" href="#vidPop"> 
<script type="text/javascript" src="<?php bloginfo('template_directory'); ?>/wp-includes/js/jquery/jq.cookie.js"></script> 
<script type="text/javascript"> 
     jQuery(document).ready(function() { 
     if(jQuery.cookie("modal") != 'true') { 
       jQuery("#vidBtnDan").fancybox({padding:0, margin:0}).trigger('click'); 
     jQuery.cookie("modal", "true", { path: '/', expires: 30 }); 
    } 
}); 
</script> 
<!-- end video scripts -->