Chrome与SafariJavaScript
我注意到我的事件在Chrome和Safari中的触发方式不同。Firefox(很大程度上)与Chrome的作用相同。然而,我不知何故偶然发现,Chrome和Safari似乎在不同的时间加载或执行JS。例如,在Chrome上100%运行的代码在Safari中不起作用,因为Chrome会在页面加载后计算div的高度(例如),Safari会在加载之前计算div的高度。或者,至少我认为这是问题所在Chrome与SafariJavaScript,javascript,jquery,google-chrome,safari,Javascript,Jquery,Google Chrome,Safari,我注意到我的事件在Chrome和Safari中的触发方式不同。Firefox(很大程度上)与Chrome的作用相同。然而,我不知何故偶然发现,Chrome和Safari似乎在不同的时间加载或执行JS。例如,在Chrome上100%运行的代码在Safari中不起作用,因为Chrome会在页面加载后计算div的高度(例如),Safari会在加载之前计算div的高度。或者,至少我认为这是问题所在 ... $(window).on('load', function() { $
...
$(window).on('load', function() {
$('.menu-feature-wrapper').each(function(){
menuHeight = $(this).outerHeight();
$(this).find('.col-md-4').css('height', menuHeight);
});
});
...
在这个示例代码片段中——上面和下面还有大约200行JS,我不得不用$(document.ready
当然)和$(window.on('load')…
在Safari中正确地计算高度,尽管它在Chrome中的作用与预期一样
我的问题是:Chrome和Safari之间的javascript是如何处理的?我是否应该意识到某些事件需要在整个页面加载之后执行,Safari会期望这样做?它们是否真的在不同的时间加载JS,而不管我将它们包含在DOM的何处(页眉与页脚)?此外,有什么地方可以解释这一点吗?我可能不擅长谷歌,但我发现关于Safari和Chrome以及所有其他浏览器之间如何处理JavaScript的信息非常稀少
提前感谢您的指点/链接