jQuery onclick播放器什么都不做

时间:2012-09-28 17:20:40

标签: javascript jquery ajax

我的索引页面上有一个输入:

<input type="button" name="goReplaceAll" value="Go" id="allReplaceGo" style="cursor:hand;" />

来自jquery的onclick调用:

$(document).ready(function() {
        $('#allReplaceGo').click(replaceAll);
});
function replaceAll(){ alert('a'); }

当我点击按钮时,没有任何反应。当我在HTML中使用onclick =“replaceAll()”时,我收到一个错误:未捕获的ReferenceError:未定义replaceAll

我无法找出这些错误或任何可能原因之间的联系。

该代码目前位于http://www.texturepacker.net

编辑:看起来我在Firefox和Chrome中获得了两个不同的结果,一旦页面加载,Chrome就不会执行任何操作(警报('a'))。现在我只是很困惑?

编辑:在我的代码中稍后看似无关的语法错误就是打破了这个调用。现在当dom加载时调用replaceAll(),我现在的问题是为什么不能在onclick上启动replaceAll(),而是在dom加载后,我错过了一些明显的东西?

3 个答案:

答案 0 :(得分:1)

在这里看起来像语法错误 ...

脚本文件中的第196行说

$(this).("src",tmpSrc);

应该是

$(this).attr("src",tmpSrc);

修复它,它应该都很好..

也在第7行

$('#allReplaceGo').live("click",replaceAll());

应该是

$('#allReplaceGo').live("click",replaceAll);

同样版本1.7 .live()已弃用。尝试使用 .on()代替

答案 1 :(得分:-2)

可能会发生这种情况,因为函数replaceAll不在jQuery范围内。 试着把她放在$(文件).ready范围内。

答案 2 :(得分:-2)

您的代码应该是

    $(document).ready(function() {
        $('#allReplaceGo').click(function(){
           replaceAll()
        });
    });
    function replaceAll(){ alert('a'); }