简体   繁体   English

jQuery:如何将页面加载后创建的div的onready关联

[英]Jquery: How to associate onready for divs created after page load

I have few divs which will be created by a script not in my control on the web page. 我只有很少的div,这些div不会由我在网页上控制的脚本创建。 These divs will be created after page has completely loaded, based on AJAX data. 这些div将在页面完全加载后根据AJAX数据创建。 How can I associate onready event with these divs. 如何将就绪事件与这些div相关联。

It sounds like you are looking for event delegation. 听起来您正在寻找事件委托。 jQuery's .on() method has a very simple approach to attaching event handlers to dynamically created elements. jQuery的.on()方法非常简单,可以将事件处理程序附加到动态创建的元素上。 For example: 例如:

$( "#dataDiv" ).on( "click", "div", function() {
  $( this ).fadeOut();
});

That code will listen for click events on all current and future div elements within #dataDiv and then hide whatever was clicked on. 该代码将监听#dataDiv所有当前和将来的div元素的click事件,然后隐藏所有单击的内容。

You can delegate all standard jQuery event types in this manner. 您可以通过这种方式委派所有标准jQuery事件类型。 Hope that helps! 希望有帮助!

您不能但可以使用事件委派,如果事件委派有关点击/悬停等。请参见http://api.jquery.com/on/#direct-and-delegated-events

如果您无法控制脚本,则可以使用ajaxComplete()来检查每个ajax请求完成后是否存在div。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM