带有load事件的jquery .on()方法

我们如何使用jQuery。 带有load事件的on()方法? 例如,代码是:

 Add 

和它的jQuery:

 jQuery(document).ready(function() { var x=$('#initial').html(); $('#add').click(function(){ $('body').append(x); }); $(document).on('load','.abc',function(){ alert('started'); }); }); 

请参阅http://api.jquery.com/on/

它说

在所有浏览器中,加载,滚动和错误事件(例如,在元素上)不会冒泡。 在Internet Explorer 8及更低版本中,粘贴和重置事件不会冒泡。 这些事件不支持与委托一起使用,但是当事件处理程序直接附加到生成事件的元素时,可以使用它们。

如果您想在添加新输入框时执行某些操作,则可以在添加后简单地编写代码。

 $('#add').click(function(){ $('body').append(x); // Your code can be here }); 

如果您希望在加载文档中的第一个输入框时执行相同的代码,那么您可以编写一个函数并在两个位置调用它,即$('#add').click并记录就绪事件

我不确定你在这里要做什么 – 当jQuery(document).ready()执行时,它已经加载了,因此document的加载事件已经被调用了。 此时附加load事件处理程序将不起作用,并且永远不会调用它。 如果您在文档加载后尝试alert “已启动”,只需将其放入(document).ready()调用中,如下所示:

 jQuery(document).ready(function() { var x = $('#initial').html(); $('#add').click(function() { $('body').append(x); }); alert('started'); });​ 

如果,因为您的代码似乎暗示,您希望在.abc加载时触发警报,请将其放在单独的.load处理程序中:

 jQuery(document).ready(function() { var x = $('#initial').html(); $('#add').click(function() { $('body').append(x); }); $(".abc").on("load", function() { alert('started'); } });​ 

最后,我认为在一个地方使用jQuery在另一个地方使用$很少。 保持代码一致通常更好,并且在任何地方使用jQuery或者在任何地方使用jQuery ,因为这两者通常是可互换的。

运行onLoad函数

 jQuery(window).on("load", function(){ ..code.. }); 

运行代码onDOMContentLoaded(也称为onready)

 jQuery(document).ready(function(){ ..code.. }); 

或者是onready的推荐速记

 jQuery(function($){ ..code.. ($ is the jQuery object) }); 

文档加载后onready会触发

当文档和所有相关内容(如页面上的图像已加载)时,onload将触发。