2014-11-20 69 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事件监听器(在创建元素之后)。