自定义jQuery功能在Firefox中不起作用

时间:2009-09-21 07:30:55

标签: javascript jquery firefox

我已经为fadein和淡出编写了一个自定义的paremeterized jquery函数。该函数在IE中工作正常,但在Firefox中没有。 功能是:

jQuery.fn.dcFadeIn = function(newDiv) {
    var openDiv = newDiv;

    return $(openDiv).fadeIn();
};

<input type="radio" name="doc3" value="independentCall" class="radioButton" id="indMetaCalls1" onClick="jQuery.fn.dcFadeIn(indCallDetailsDoc1);" />

4 个答案:

答案 0 :(得分:4)

您正在引用一个元素,就好像它是一个windows对象的成员一样。只有IE将元素放在windows对象中,因此在任何其他浏览器中都不起作用。

使用JQuery对象获取对元素的引用:

onClick="jQuery.fn.dcFadeIn($('#indCallDetailsDoc1'));"

答案 1 :(得分:1)

您是否在FireFox中启用了JavaScript?

如果是这样,你能否显示'indCallDetailsDoc1'的标记?

另外,为什么不直接使用'newDiv',而不是先将它复制到'openDiv'?

答案 2 :(得分:0)

尝试更改:

onClick="jQuery.fn.dcFadeIn(indCallDetailsDoc1);"

为:

onClick="jQuery.fn.dcFadeIn(this);"

答案 3 :(得分:0)

什么是“indCallDetailsDoc1”,为什么要使用jQuery.fn.dcFadeIn()调用函数?你不能像这样调用插件函数。

请考虑阅读此页面以学习编写jQuery插件: http://docs.jquery.com/Plugins/Authoring