Firefox在输入URL时不加载jQuery插件

时间:2010-07-30 05:08:39

标签: jquery firefox plugins loading onload

我在Firefox 3.6.8上遇到了一个非常烦人的问题。 我有这个示例插件:

    (function($){  

    $.fn.test_plugin = function(settings){  

        $(this).load(function(settings){
            alert('ok');
        });
    };
})(jQuery); 

在html页面的底部是这样的:

        $(function(){
        $("#image1").test_plugin();
    });

所以基本上这应该显示页面加载时的na警告消息,除非你在Firefox上手动输入网址时这样做。如果我刷新页面没问题,但在重定向或手动输入URL时,它不是。我没有错误,从萤火虫一切似乎都很好。这只发生在FF上,我在Safari,Chrome,IE上没有probs。

知道为什么会这样吗?

感谢

3 个答案:

答案 0 :(得分:0)

请参阅jQuery API entry for load

  

.load(url,[data],[complete(responseText,textStatus,XMLHttpRequest)])

加载的第一个参数是一个URL。这可以选择性地跟随数据和回调函数。您的加载调用中未包含URL。

看起来你正在尝试编写你的第一个jQuery插件。如果是这种情况,我建议您阅读A Plugin Development Pattern

我基于此构建了a Gist,您也可以查看。

答案 1 :(得分:0)

对我而言,似乎您可能尝试将jquery加载函数用作页面卸载事件,这是错误的。加载函数用于Ajax调用,如calvinf所述,需要URL参数以及其他参数来调用。

但是阅读更多内容并且您正在编写jquery插件的方式:)

答案 2 :(得分:0)

好的,谢谢你的回复,不过我似乎已经修好了。

我刚刚用过

$(window).load(function(settings){

而不是

$(this).load(function(settings){

它修复了问题,并且在其他浏览器上运行良好。