请让我知道以下内容之间的区别。
我对这种行动是陌生的。
$('#myButton').on('click', function () {
// Some code
});
Run Code Online (Sandbox Code Playgroud)
和
$(document).on('keyup', '#myButton', function () {
// Some Code
});
Run Code Online (Sandbox Code Playgroud)
和
$('#myButton').click(function () {
//Some code
});
Run Code Online (Sandbox Code Playgroud)
从文档
委派事件的优势在于,它们可以处理来自后代元素的事件,这些事件随后会添加到文档中。通过选择保证在附加委托事件处理程序时会出现的元素,您可以使用委托事件来避免频繁附加和删除事件处理程序的需要。例如,如果事件处理程序想要监视文档中的所有冒泡事件,则此元素可以是Model-View-Controller设计中视图的容器元素,也可以是文档。在加载任何其他HTML之前,document元素位于文档的开头,因此可以在其中附加事件,而不必等待文档准备就绪。
在其正文中具有1,000行的数据表上,此示例将处理程序附加到1,000个元素:
$( "#dataTable tbody tr" ).on( "click", function() {
alert( $( this ).text() );
});
Run Code Online (Sandbox Code Playgroud)
委托事件方法将事件处理程序仅附加到一个元素tbody上,并且该事件仅需要冒起一个层次(从单击的tr到tbody):
$( "#dataTable tbody" ).on( "click", "tr", function() {
alert( $( this ).text() );
});
Run Code Online (Sandbox Code Playgroud)
注意:委托事件不适用于SVG。
另请参阅:
| 归档时间: |
|
| 查看次数: |
2838 次 |
| 最近记录: |