我看到很多项目都在使用
$(document).on('ready', function(e){
//jquery stuff
})而不是:
$( document ).ready(function( ) {
// Code using $ as usual goes here.
});或
$(function() {
// Handler for .ready() called.
});我阅读了完整的api documentation,但我不知道第一个示例的用法是什么。
对我来说,第一个示例中的on用法是无用的。
这两种情况的区别是什么?
发布于 2013-10-16 23:56:17
函数:
$( document ).ready(function ( ) {
// Code using $ as usual goes here.
});翻译为:
$( document ).on( 'ready', function (e) {
//jquery stuff
})这些速记函数也是如此:
$( element ).click( function ( ) { } );
$( element ).hover( function ( ) { } );
$( element ).load( function ( ) { } );
$( element ).scroll( function ( ) { } );来自.click( handler(eventObject) )的documentation
此方法是前两个变体中的
.on( "click", handler )和第三个变体中的.trigger( "click" )的快捷方式。
更新答案-不同之处!
还有
$(document).on( "ready", handler ),从jQuery 1.8开始就被弃用了。这与ready方法的行为类似,但如果ready事件已经激发,并且您尝试.on( "ready" )绑定的处理程序,则不会执行绑定的处理程序。以这种方式绑定的就绪处理程序将在上面其他三个方法的任何绑定之后执行。
--
更新#2
jQuery(function(){});
也应该被认为是更短的替代方案
jQuery(document).ready(function(){});
这是真正的首选,因为它不会降低可读性,并删除了几个字节的字符。
https://stackoverflow.com/questions/19408082
复制相似问题