我正在使用this plugin来建立Cookie
一切运作良好,但在IE7& IE8
这是我的JS代码:
jQuery(document).ready(function() {
jQuery(function() {
if (jQuery.cookie('shownDialog') != 'true') {
window.onload = document.getElementById('lightbox-22556401244951').click();
}
jQuery.cookie('shownDialog', 'true', {expires: 7});
});
});
不确定为什么它只在IE7& IE8?
答案 0 :(得分:3)
您将所有内容都包含在就绪函数中,因此window.onload
已经触发了。将代码更新为:
jQuery(function() {
if (jQuery.cookie('shownDialog') != 'true') {
jQuery('#lightbox-22556401244951').trigger("click");
}
jQuery.cookie('shownDialog', 'true', {expires: 7});
});
答案 1 :(得分:0)
ready
事件通常发生在load
事件之前,但IE没有ondomready
事件,因此jQuery会模拟它。这意味着ready
事件有时可能发生在IE中的load
事件之后。
使用load
方法绑定事件,然后它将始终触发。如果load
事件已经触发,jQuery将直接调用事件处理程序:
jQuery(document).ready(function() {
jQuery(function() {
if (jQuery.cookie('shownDialog') != 'true') {
jQuery(window).load(function() {
document.getElementById('lightbox-22556401244951').click();
});
}
jQuery.cookie('shownDialog', 'true', {expires: 7});
});
});