2014-11-20 68 views
0

On my page有5個白色圓形按鈕指向頁面中心。點擊其中的任何一個都會顯示一個模式窗口,其中包含一個「關閉」按鈕。此按鈕的標記是:即使可以在瀏覽器中選擇元素,也無法將元素作爲目標元素

<a href='#'class='button modal_close'>Close</a> 

而且JS代碼,我試圖連接到它:

$('.modal_close').on('click', function() { 
    alert('test'); 
}); 

然而,點擊這個按鈕不會觸發任何警報,也不產生任何在Firebug JS錯誤。我可以使用相同的結果來定位模態窗口的子部分。只有當我瞄準整個模式容器時,它才能起作用。

是什麼原因導致此問題?

+0

工作正常,我。 http://jsfiddle.net/x5x308pr/ – 2014-11-20 20:27:19

回答

0

實際上,模態內容是動態生成的,在這種情況下,常規綁定方法失敗。我這樣做解決了這一問題:

$(document).on('click','.modal_close',function(){ 

代替:

$('.modal_close').on('click', function() { 
0

您需要將點擊事件偵聽器附加到DOM中存在的元素之後(我猜.on附件正在onload上,在模態存在之前)。嘗試在打開模式的代碼中添加click事件監聽器(在創建元素之後)。