我有一些jQuery将方向事件绑定到页面,在方向更改时,从页面中删除一堆对象:
$(window).bind('orientationchange',function(event){
$('.tooltip-popup').remove();
})
这很有效。方向更改后,将从DOM中删除具有该类的任何对象。
但是,如果我们通过AJAX加载更多这些对象,那么在方向更改时不会删除这些项目。
这是令人困惑的,因为我的假设是在更改方向时,会重新查询DOM以查找所述元素,因此应查找所有元素,无论它们是否通过AJAX加载。
我的假设是不正确的,并且在初始页面加载时查询DOM,因此,除非我使用delegate
来绑定事件,否则永远不会知道通过AJAX加载的对象?
使用delegate
当然很容易,但我想确保理解发生了什么。
答案 0 :(得分:0)
我认为问题在于你的dom元素,在dinamically添加,不受事件约束。可能的解决方案是使用.live()
或更新版本的jquery .on()