学习之js绑定事件】的更多相关文章

由于ie中绑定事件的bug,所以产生了用原生的实践操作来模拟事件绑定的方法,跟着李炎恢学的一招. function addEvent(obj, type, fn){ if(obj.addEventListener){ obj.addEventListener(type, fn, false); }else{ if(!obj.events) obj.events = {}: if(!obj.events[type]) {   obj.events[type] = []; if(obj['on'+…
在js中绑定多个事件用到的是两个方法:attachEvent和addEventListener,但是这两个方法又存在差异性 attachEvent方法  只支持IE678,不兼容其他浏览器 addEventListener方法   兼容火狐谷歌,不兼容IE8及以下 addEventListener方法 div.addEventListener('click',fn); div.addEventListener('click',fn2); function fn(){ console.log("春…
js的事件绑定方法中,ie只支持attachEvent,而FF和Chrome只支持addEventListener;严格来说:addEventListener只有IE9以上版本的IE浏览器上能够兼容,IE8或者更低的版本是不支持,这时要想能够兼容IE低版本浏览器就需要判断当前浏览器然后针对不同浏览器决定用哪一个. attachEvent和addEventLitener的不同之处是第二个参数事件名要多加个“on”,比如‘onclick’,而且他的this 指向的是window,在使用的时候需要改变…
js的事件绑定方法中,ie仅仅支持attachEvent,而FF和Chrome仅仅支持addEventListener,所以就必须为这两个方法做兼容处理,原理是先推断attachEvent仅仅否为真(存在),假设为真则用attachEvent()方法.否则的话就用addEventListener(). 另外,为了避免每次绑定事件时都要做推断.能够封装一个函数myAddEvent(obj,ev,fn){}. 代码例如以下: <!DOCTYPE html> <html> <hea…
js通过事件代理的方式绑定跳转事件,我这里的逻辑是把click事件绑定在最外层container上面,如果e.target包含我已经写好的class,则执行跳转逻辑.但是这种方式好像只能是在点击的元素的上面,也就是最内层的元素上面有相应的class才能跳转,在外层加同样的class不生效,说明是我对于事件代理的理解不够深刻,其实事件代理的作用就是为了把目标元素的事件绑定在外层做代理,我想实现外层元素点击,固然不可生效. 这是原来的写法: document.querySelector('.cont…
参考:  http://www.cnblogs.com/leejersey/p/3545372.html jQuery on()方法是官方推荐的绑定事件的一个方法.$(selector).on(event,childSelector,data,function,map)由此扩展开来的几个以前常见的方法有.bind() $("p").bind("click",function(){ alert("The paragraph was clicked."…
each() $("p").each(function(i,ele){ //alert(ele.innerHTML); alert($("p:eq("+i+")").html()); }); $("p").each(function(){ alert($(this).html()); }); 一.绑定事件 bind(type,[data],fn) unbind(type) //绑定多个事件 $("p").b…
监听事件的绑定与移除主要是addEventListener和removeEventListener的运用. addEventListener语法 element.addEventListener(type,handler,false/true) type:事件类型 handler:事件执行触发的函数 false/true:false为冒泡/ture为捕获,参数是true,表示在捕获阶段调用事件处理程序:如果是false,表示在冒泡阶段调用事件处理程序. 事件捕获:父级元素先触发,子集元素后触发:…
添加事件 IE: attachEvent Other: addEventListener var button = document.getElementById("buttonId"); if(button.addEventListener){ button.addEventListener("click",eventFunction,false); }else if(button.attachEvent){ button.attachEvent("on…
addEventListener()与removeEventListener()用于处理指定和删除事件处理程序操作.所有的DOM节点中都包含这两种方法,并且它们都接受3个参数:要处理的事件名.作为事件处理程序的函数和一个布尔值.最有这个布尔值参数是true,表示在捕获阶段调用事件处理程序:如果是false,表示在冒泡阶段调用事件处理程序. <!DOCTYPE html> <html> <head> <meta charset="utf-8" /…