jQuery不使用Safari
我正在使用WordPress安装,除了Safari(Win和OSX),它在所有浏览器中都能正常工作。这可能与jQuery/WebKit出现的jQuery不使用Safari,jquery,wordpress,safari,Jquery,Wordpress,Safari,我正在使用WordPress安装,除了Safari(Win和OSX),它在所有浏览器中都能正常工作。这可能与jQuery/WebKit出现的.load()过早触发的问题有关吗?我对jQuery/JavaScript非常陌生,因此非常感谢您的帮助 此页面在Safari中不起作用: 而此页面(出于某种原因)会: 这个问题与项目的数量无关(我的开发版本中有大量的测试帖子,我也遇到了同样的问题)、@font-face嵌入、图像的使用或其他问题 以下是标题部分中调用的代码: jQuery(window).
.load()
过早触发的问题有关吗?我对jQuery/JavaScript非常陌生,因此非常感谢您的帮助
此页面在Safari中不起作用:
而此页面(出于某种原因)会:
这个问题与项目的数量无关(我的开发版本中有大量的测试帖子,我也遇到了同样的问题)、@font-face嵌入、图像的使用或其他问题
以下是标题部分中调用的代码:
jQuery(window).load(function($) {
// We can only load masonry on window.load because of embedded swfobjects
jQuery('.content').masonry({
singleMode: true,
resizable: true,
animate: false
}); // initiate masonry
jQuery('.content').infinitescroll({
navSelector: "div.navigation",
// selector for the paged navigation (it will be hidden)
nextSelector: "div.navigation div.nav-previous a",
// selector for the NEXT link (to page 2)
itemSelector: ".content div.post",
// selector for all items you'll retrieve
loadingText: "Lädt weitere Beiträge..."
}, function(newElements) {
jQuery(this).masonry({
appendedContent: jQuery(newElements)
});
})
});
尝试使用“DOM就绪”事件,该事件在“加载”事件之后触发(当图像完成加载等)
jQuery有一个很好的快捷方式。而不是
jQuery(window).load(function() {
// ...
});
做
或者,简单地说:
$(function() {
// ...
});
当您不并行使用任何其他JS框架时,使用
$
代替jQuery
Thx进行快速回复既安全又方便,但这也不起作用。我的内容确实通过(window.load)被“masonified”。但是,safari中的“left”属性始终设置为0,因此不会呈现第二列。@伊利里亚:为了排除任何计时问题,请使用$(function(){setTimeout(function(){/*yourstuff*/},1000);})
将呼叫延迟一秒钟。如果这没有帮助,那么时机也不是问题。
$(function() {
// ...
});