这个问题去年碰到过一次,当时没空研究,就跳过去了,换了个方法刷新整个页面。不用你说,我现在也觉得有点傻(当时也觉得)。
这次又碰到类似的,用ZUI(基于BootStrap)的lightbox,动态HTML增加了图片,但是data-toggle=”lightbox”这个事件不生效,点击一下图片直接当前窗口打开图片链接了。其实所有的data-toggle都有一样的问题,就是不生效。
有些人说需要Append相应的HTML后,动态的data-toggle属性设置一下,其实是没用的。
还有人说用全局的delegate,那个小题大做。如果自己写的自定义函数,倒是可以用。
其实很简单,就是Append之后,获取到DOM的元素后,手动激活一下事件。
$(“.cards”).find(‘.card’).eq(0).find(‘a’).eq(0).lightbox();
popover同理:$(“.cards”).find(‘.card’).eq(0).find(‘a’).eq(0).popover();