4

所以我有一些代码只有在加载网站内容时才需要执行,所以我将它放在窗口加载中,如下所示:

$(window).load(function() { 
   //some stuff happens
});

在 safari 和 chrome 中运行良好(我在 mac osx 10.8 上),但似乎不适用于 firefox(19.0.2)。是否有修复或需要应用的东西才能使 Firefox 使用它?

如果我在 Firefox 中清除缓存,它会起作用,但在那之后的任何时候都不起作用。

4

5 回答 5

5

万一其他人从谷歌找到这个页面......

对我来说,以下确实适用于 Firefox:

$(window).load(function() {
    //Do something
});

但是当页面被缓存时,例如单击后退按钮时,$(window).load()不会再次调用。请参阅以获取错误报告。这是 Firefox 的预期行为,因此不要期待修复。

解决此问题的两件事是在使用此代码(除了您的$(window).load()代码之外)点击后退按钮时阻止浏览器缓存页面:

window.onunload = function(){}; //This forces bfcache to not cache the page

或者使用其他 jQuery 事件而不是$(window).load()

window.onpageshow = function () {
    //Do something
};
于 2017-03-02T19:25:58.373 回答
1

你试过了吗window.onload = function(){}

于 2013-04-11T09:28:33.610 回答
1

如果您使用jQuery. 使用 jQuery 事件:

$(document).ready(function(){
    // YOUR CODE
});
于 2020-12-14T09:26:40.540 回答
0

尝试这个。它适用于所有浏览器。

<script type="text/javascript">
window.onload=function(){
    alert('do something');  
}
</script>
于 2013-04-11T09:31:26.390 回答
0

只是简单地做

my_function(){
    // some code
}

window.onload = my_function

于 2013-04-11T09:31:45.790 回答