.click()不适用于稍后加载的span类

时间:2013-03-05 06:05:01

标签: javascript jquery

在我的主页面中,我有一个“音乐”按钮,它会加载music.txt

的script.js

$("#music").load("music.txt");
$('.song').click(function () {  ... });

music.txt

 <span class="song"> bl </span>

$('.song').click无效music.txt(适用于主页)。我也尝试了live()delegate()

1 个答案:

答案 0 :(得分:9)

使用.on() jQuery方法。

$('.song').on('click',function () { /*...*/ });

$(document).on('click','.song',function(){ /*...*/ });

因为.live()已从新版本弃用。

在第一个示例中,.on()方法的行为类似于bind,并且仅适用于已存在的元素

第二个示例在很多方面表现得像.live()delegate()。并且适用于稍后添加的元素。