【发布时间】:2014-01-02 20:23:18
【问题描述】:
我正在使用事件来替换某些层中的“src”属性(<div class="total-title" src="anURL">):
$('.playOnAP').on('click',function() {
$('#mp3-list ul li',this).each( function( index, element ) {
$('.total-title').eq(index).attr('src', $(this).text() );
});
当$('.playOnAP') 元素被替换时,它第一次工作,但不是在Ajax 请求之后。我猜我应该使用Delegated Events,但不要让自己说清楚。
我尝试了下一个:
$('.playOnAP').on('click','#mp3-list ul li',function() {
$('.playOnAP #mp3-list ul li').on('click',function() {
$('.playOnAP #mp3-list ul li').on('click','#mp3-list ul li',function() {
但不起作用。
【问题讨论】:
-
您是替换元素
.playOnAp本身还是仅替换其内容? -
@PSL - 整个元素
-
然后做
$('parentOfplayOnAPOrdocument').on('click','.playOnAP #mp3-list ul li',function() {基本上你想将事件绑定到DOM中存在的容器元素,只要你需要事件。 -
->learn.jquery.com/events/event-delegation<-
标签: javascript delegates jquery