$('.className').on('click',function() { })和$('document').on('click','.className',function() { })的区别

$('document').on('click','.className',function() { });是把事件绑定到document上,页面每次有点击就会去判断是否动作相符;

$('.className').on('click',function() { });是把事件绑定到元素上;效率更高

$("className").on为onclick绑定,只有在页面onload的时候执行一次而有些浏览器刷新是不执行unload的,当页面刷新后,新加载的具有className的元素便没有事件绑定到上面了,$(document).on这种方法会刷新和重新赋予绑定操作,所以一定程度上更为全面。

onunload:

IE6,IE7,IE8 中 刷新页面、关闭浏览器之后、页面跳转之后都会执行;

IE9 刷新页面 会执行,页面跳转、关闭浏览器不能执行;

firefox(包括firefox3.6) 关闭标签之后、页面跳转之后、刷新页面之后能执行,但关闭浏览器不能执行;

Safari 刷新页面、页面跳转之后会执行,但关闭浏览器不能执行;

Opera、Chrome 任何情况都不执行。

猜你喜欢

转载自www.cnblogs.com/xixi123/p/12484967.html