有没有人知道为什么我的代码在JSFiddle上正常工作,但在我使用网站上的代码时却没有?
以下是JSFiddle
在我的网站上,我在标题中包含以下链接:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
答案 0 :(得分:1)
正如@helderdarocha指出的那样,你的jsFiddle设置为运行onLoad。这意味着jsFiddle会自动将所有JS代码包装在window.ready()事件中。
JSFiddle中有几个选项
根据您选择的选项,JSFiddle以不同的方式生成您的代码。
例如,使用 onLoad 会生成以下源代码:
$(window).load(function() {
function TermsAndConditions() {
days = 30;
myDate = new Date();
myDate.setTime(myDate.getTime() + (days * 24 * 60 * 60 * 1000));
document.cookie = 'TermsAndConditions=Accepted; expires=' + myDate.toGMTString();
}
var cookie = document.cookie.split(';')
.map(function(x) {
return x.trim().split('=');
})
.filter(function(x) {
return x[0] === 'TermsAndConditions';
})
.pop();
if (cookie && cookie[1] === 'Accepted') {
$("#terms-and-conditions").hide();
}
$('.accept-button a').on('click', function() {
TermsAndConditions(); // set cookie
$("#terms-and-conditions").hide(); // hide element
return false;
});
});