self.attachevent is not a function的解决方法
注意原因:
window对象的attachEvent方法只在IE浏览器中有效,其它浏览器不支持这个方法,所以报错。
self.attachevent is not a function其实就是以前的代码, 没有做chrome、firefox浏览器兼容导致。
self.attachEvent("onblur",function(){dd.style.display="none"})
上面的代码在chrome浏览器肯定会报错的。
因为chrome浏览器绑定事件不支持attachevent而支持addEventListener。
下面是临时解决方法:
if(!self.addEventListener){ self.attachEvent("onblur",function(){ddd.style.display="none"}) }
但是效果会丢失,这个不报错但效果也没有了。
IE:element.attachEvent(”onclick”, func);。
FF:element.addEventListener(”click”, func, true)。
通用:element.onclick=func。虽然都可以使用onclick事件,但是onclick和上面两种方法的效果是不一样 的,onclick只有执行一个过程,而attachEvent和addEventListener执行的是一个过程列表,也就是多个过程。例 如:element.attachEvent(”onclick”, func1);element.attachEvent(”onclick”, func2)这样func1和func2都会被执行。
建议大家参考这篇文章的方法解决:http://www.jb51.net/article/28637.htm
相关推荐
-
attachEvent的使用方法与传递参数[IE|firefox]
比较好的解决办法可以用作用域,比较下下面的变量str在作用域内和作用域外的值 复制代码 代码如下: <input id="button1" type="button" value="按我" /> <script language="javascript"> window.onload=function(){ var obj=document.getElementById("but
-
浅谈addEventListener和attachEvent的区别
• addEventListener共有3个参数,如下所示: element.addEventListener(type,listener,useCapture); 参数 参数说明 element 要绑定事件的对象,及HTML节点. type 事件名称,注意去掉事件前边的"on",比如"onclick"要写成"click","onmouseover"要写成"mouseover". listener 要绑定的
-
javascript attachEvent绑定多个事件执行顺序问题
常见的绑定事件有直接绑定在页面元素中比如<div id="wrap" onclick="a();"></div>,这个换种方法也就是分离出来写在js代码里如document.getElementById('wrap').onclick = function(){a();},此时如果需要绑定多个方法则直接写在一起即可如document.getElementById('wrap').onclick = function(){a();b();}或&
-
javascript attachEvent和addEventListener使用方法
attachEvent方法 按钮onclick addEventListener方法 按钮click 两者使用的原理:可对执行的优先级不一样,下面实例讲解如下: attachEvent方法,为某一事件附加其它的处理事件.(不支持Mozilla系列) addEventListener方法 用于 Mozilla系列 举例: Java代码 复制代码 代码如下: document.getElementById("btn").onclick = method1; document.getElem
-
如何解决attachEvent函数时,this指向被绑定的元素的问题?
使用attachEvent对同一事件进行多次绑定,这是解决事件函数定义冲突的重要方法.但是在IE中,函数内的this指针并没有指向被绑定元素,而是function对象,在应用中,这是很难受的一件事,如果试图用局部变量传送元素,会因为闭包而引起内存泄漏.那么,我们应该如何解决这一难题呢? 我给Function添加了原型方法"bindNode",在这个方法里,根据传送过来的元素,进行全局性存储转换,然后返回经过封装的函数,使用call方法来进行属主转换. test if(!docum
-
javascript中attachEvent用法实例分析
本文实例讲述了javascript中attachEvent用法.分享给大家供大家参考.具体分析如下: 一般我们在JS中添加事件,是这样子的 obj.onclick=method 这种绑定事件的方式,兼容主流浏览器,但如果一个元素上添加多次同一事件呢? obj.onclick=method1 obj.onclick=method2 obj.onclick=method3 如果这样写,那么只有最后绑定的事件,这里是method3会被执行,这个时候我们就不能用onclick这样的写法了,主角改登场了,
-
JavaScript通过attachEvent和detachEvent方法处理带参数的函数
无标题文档 var theP; //P标签对象 var show=function(msg){ //直接定义 function show(msg) 效果是一样的 return function(){ alert(msg+" from show()"); if(window.addEventListener){ //FF etc. theP.removeEventListener("click", theP.show11, false); } else{ //IE t
-
addEventListener和attachEvent二者绑定的执行函数中的this不相同
写 addEventListener 和 attachEvent 区别的博文不少,不过大部分都把重点放置于前者是Firefox chrome,后者只是存在于IE系列中. 最近在写一个事件代理的时候,遇到一个BUG,发现除此外,二者绑定的执行函数中的 this 是不相同的,addEventListener 和 attachEvent函数在运行时候的上下文是不相同的. 用了一个简单的demo来描述这个不同点: 复制代码 代码如下: <html xmlns="http://www.w3.org/
-
JS在IE和FF下attachEvent,addEventListener学习笔记
对象名.addEventListener("事件名(不带ON)",函数名,true/false);(FF下) 对象名.attachEvent("事件名",函数名);(IE下) 说明: 事件名称,要注意的是"onclick"要改为"click","onblur"要改为"blur",也就是说事件名不要带"on". 函数名,记住不要跟括号最后一个参数是个布尔值,表示该事件的
-
Javascript 的addEventListener()及attachEvent()区别分析
Mozilla中: addEventListener的使用方式: target.addEventListener(type, listener, useCapture); target: 文档节点.document.window 或 XMLHttpRequest. type: 字符串,事件名称,不含"on",比如"click"."mouseover"."keydown"等. listener :实现了 EventListene
随机推荐
- Javascript访问html页面的控件的方法详细分析第1/2页
- Js 弹出框口并返回值的两种常用方法
- JavaScript浏览器对象之一Window对象详解
- javascript IFrame 强制刷新代码
- Linux安装多个jdk版本进行切换
- Bootstrap Paginator分页插件与ajax相结合实现动态无刷新分页效果
- [图]Flash+ASP实现电子互动地图在线标注功能
- 九宫图比较常用的多控件布局(GridView)使用介绍
- mysql 登录时闪退的问题解决方法
- php使用COPY函数更新配置文件的方法
- shell实现FizzBuzzWhizz问题示例(拉勾网面试题)
- imageVue的Slideshow模块使用技巧
- 跟我一起学JQuery插件开发
- 用jQuery旋转插件jqueryrotate制作转盘抽奖
- cos-html-cache关于WordPress的静态化方法
- C++ 中使用lambda代替 unique_ptr 的Deleter的方法
- python控制台显示时钟的示例
- WinForm中实现picturebox自适应图片大小的方法
- 食物相克对照表(必看)第1/2页
- python numpy之np.random的随机数函数使用介绍