li点击Safari上的活动?

时间:2010-01-03 18:15:25

标签: jquery safari onclick html-lists

此问题特别适用于Safari。

<div id="list">
    <ul>
        <li onclick="do_something();"><!-- block with stuff in it --></li>
    </ul>
</div>

正常加载上述内容后,onclick将应用于整个li块。问题是,稍后我使用ajax动态填充#list div ...

$("#list").html('<ul><li onclick="do_something();"><!-- block with stuff in it --></li></ul>');

click事件不会触发整个块,而只触发块的一部分(即块内不存在内容的部分,即背景)。

2 个答案:

答案 0 :(得分:2)

这很奇怪。您可以使用jquery事件:

$("#list")
    .empty()
    .append ( $('<ul><li><!-- block with stuff in it --></li></ul>' )
        .find('li')
        .click(dosomething)
        .end()
    );

答案 1 :(得分:0)

出于奇怪的安全原因,在使用innerHTML属性(这正是html()所做的)时,您无法使用onclick。您需要使用addEvent(mootools)附加事件 - &gt;在jquery中找到一些相关的方法