


原先js代碼
$(" .trading-terminal .item-sel ").click(function(){
? ? var $ul = $(this).parent("li").find(".item-center").css("display");
? ? $(this).parent("li").toggleClass("show");
? ? $('.Position').find('li').removeClass("show");
? ? if($ul=="none"){?
? ? $(this).parent("li").addClass("show");
? ? }else{
? ? ? ? $(this).parent("li").removeClass("show");?
? ? }
});
解決辦法:
可以用?jQuery 事件 -?delegate() 方法;
定義和用法
delegate() 方法為指定的元素(屬于被選元素的子元素)添加一個(gè)或多個(gè)事件處理程序,并規(guī)定當(dāng)這些事件發(fā)生時(shí)運(yùn)行的函數(shù)。
使用 delegate() 方法的事件處理程序適用于當(dāng)前或未來(lái)的元素(比如由腳本創(chuàng)建的新元素)。
語(yǔ)法
$(selector).delegate(childSelector,event,data,function)
參數(shù)描述

如何使用 delegate() 方法向尚未創(chuàng)建的元素添加事件處理程序
自己的實(shí)例:代碼
$("body").delegate('.trading-terminal .item-sel',"click",function(){
? ? var $ul = $(this).parent("li").find(".item-center").css("display");
? ? $(this).parent("li").toggleClass("show");
? ? $('.Position').find('li').removeClass("show");
? ? if($ul=="none"){?
? ? $(this).parent("li").addClass("show");
? ? }else{
? ? ? ? $(this).parent("li").removeClass("show");?
? ? }
});
