工作不能代替生活
.on does not work in place of live
我已经知道。on应该取代。live有一段时间了,但是我从来没有能让它工作。
I have try:
$(this).on('click', function(){
// Do something...
})
$(this).on({
click: function(){ // Do something }
})
但这对我从来都不起作用!
特别是当我试图将事件绑定到最初页面上可能不存在的元素时。
谁能帮我把这个彻底弄清楚吗?我使用的是最新版本的jquery
对于动态生成的元素,您需要使用
$(document).on('click','YOUR SELECTOR', function(){
});
这是因为文档是元素的容器,它可以监视DOM的变化。对于每个操作,都需要有一个显式的事件侦听器。如果你将一些东西绑定到$(this),当你删除它时,它(选择器)可能不存在。
像这样做:
$(".parent").on('click', ".child", function(){
// Do something...
})
您使用的语法就像bind
。要将event绑定到所有未来元素,请使用上述语法。
您需要指定哪些元素。
$element.on('click', '.foo', handler)
将handler
与$element
内所有活的.foo
结合。
相关文章:
- 不能从angular2中的子组件指定父组件中的数组
- AngularJS UI路由器不能像ng路由器那样工作
- HTML5音频加载和播放获胜'我不能在iPad上工作
- 转义符不能与innerHTML一起使用
- JSON.parse没有'不能使用Javascript
- JS可以在Chrome中工作,但不能在Firefox中工作
- 砌体不能填补小缺口
- javascript扫雷器floodfill算法不能正常工作
- JavaScript指令不能像我想象的那样工作
- 为什么在这个网站上不能通过JS访问元素
- Facebook登录按钮没有'不能在Firefox上工作
- WebRTC视频聊天可以在FF中使用,但不能在Chrome中使用
- 为什么jQuery 1.8不能在IE8和InternetExplorer9中使用?(截至2012年9月的IE9最新版本)
- AngularJS:$q.dedefe()不能由工厂方法共享
- 不能在同一页上进行多个jquery幻灯片切换
- 不能在图像中的地图标记中使用花式框jquery插件的区域标记
- jQuery Datepicker可以在Safari中工作,但不能在FF或Chrome中工作
- javascript没有´我不能在joomla 3.0中工作
- 工作不能代替生活
- 委托/生活失败.不能在Prepending元素之后绑定事件