我有动态生成的内容。如何“聆听”选择器并在可用时触发某个功能,然后停止聆听。在jQuery 1.7中有这样的东西吗?如何推迟一个函数,直到元素可用?
回答
编辑:对不起,没有真正阅读你的问题的权利! :)
你可以这样做,但这有点痛苦。 jQuery中没有对它的本地支持,但是浏览器会触发可以连接到的事件。查看可用的mutation events以及如何实施它们,特别是DOMNodeInserted event。还有一些info here关于如何处理删除元素(使用jQuery挂接到DOMNodeRemoved事件)。希望这可以帮助!
我原来的,不正确的答案:
您应该能够使用jQuery的on()
方法绑定事件给出元素。如果页面呈现时元素不存在,您可以将事件绑定到存在的父元素,并让jQuery通过DOM将事件“冒泡”到您附加的处理程序。
以下是取自the documentation的示例。该事件绑定到tbody
元素,但它处理后裔tr
元素上的单击事件,该事件在绑定事件时可能存在也可能不存在。
这会让你检测何时单击元素,而不是创建元素。 (这可能是实现OP所需要的一种方式,或者它可能不是,但它不是被问到的。) – millimoose
我的不好,现在编辑答案...... :) – greg84
- 1. 推迟一个函数,直到完成几个动画
- 2. 如何推迟一个JQUERY onload函数
- 3. 推迟一个jQuery函数
- 4. 离子/ AngularJS - 推迟垂直滚动事件到父元素
- 5. 如何应用一个函数到每一个元素
- 6. 延迟JQuery函数,直到另一个JQuery函数运行
- 7. 推迟角直到Firebase数据收到
- 8. 如何推迟javascript函数的调用?
- 9. 如何等待,直到一个元素不可见
- 10. 如何推迟一个事件“Checkbox.Checked”,直到调用某个方法(加载)
- 11. 试图推迟一个for循环,直到一个div加载
- 12. 延迟一个iFrame加载其src,直到函数被调用?
- 13. 如何添加一个div元素到一个php函数
- 14. 如何Object元素推到一个数组中Vuejs/JavaScript的
- 15. 我可以推迟一个装饰器发生,直到我调用该函数吗?
- 16. 如何推迟一个函数的启动
- 17. 我如何计算元素直到找到N个好元素?
- 18. 如何延迟显示元素,直到slideToggle完成?
- 19. AngularJS延迟编译指令,直到元素可见
- 20. 如何推迟php函数几天?
- 21. jQuery/Javascript延迟执行一个函数,直到完成几个函数
- 22. 如何设计一个可扩展到n个元素的散列函数?
- 23. 延迟JavaScript函数,直到一个CSS动画完成
- 24. 如何让jQuery函数一直向左移动元素?
- 25. Android的 - 如何使一个可见元素推动其他元素
- 26. 如何推迟nativeactivity调用,直到java对象被初始化?
- 27. 推迟在自定义对象的计算,直到可用
- 28. 阻塞直到元素可用
- 29. 如何将数据元素同时推送到两个数组?
- 30. 循环一个函数,直到调用另一个函数
阅读jQuery.Deferred API – frosty
@aaronfrost该API如何处理这个用例呢? – millimoose
直接的方法是将触发此功能的内容移动到正在生成内容的位置。我不认为有一个当前的jQuery插件来处理DOM修改事件。你可以尝试直接处理我想的。 – millimoose