1

我正在使用旧版本的 Firefox(由于各种原因,我无法更新它)。而且我不能使用 jQuery 事件处理程序(它们似乎在旧浏览器上泄漏内存)。

所以我被迫使用以下代码:

<div class="somediv" onclick="dostuff()"></div>

问题是,代码不起作用。为什么?

我的Javascript代码:

$(document).ready(function() 
{
   function dostuff()
   {
       $('#someotherdiv').html('hello');
   }
});
4

4 回答 4

4

您已将函数放置在ready事件处理程序中,因此它在该范围内是本地的。将函数放在根级别,以便全局可用:

function dostuff() {
  $('#someotherdiv').html('hello');
}

$(document).ready(function() {
  // whatever you need to do when the page has loaded
});
于 2013-04-16T10:15:49.653 回答
0

把函数放在外面$(document).ready(就行了,下面不需要把函数放在里面$(document).ready(

function dostuff()
   {
       $('#someotherdiv').html('hello');
   }
于 2013-04-16T10:14:22.610 回答
0
$(document).ready(function() {

});

你的功能在这里

 function dostuff()
   {
       $('#someotherdiv').html('hello');
   }
于 2013-04-16T10:15:49.933 回答
0

另一种方式:使用jQuerys事件系统来分配一个点击处理程序

$(document).ready(function() {
    $('.somediv').click(function () {
        $('#someotherdiv').html('hello');
    }
});
于 2013-04-16T10:20:22.660 回答