开发者社区 问答 正文

document.attachEvent('onmouseover',x1)如何把document改成指定元素?

请看下面代码,事件x1添加到了document上了,如果我想只有鼠标经过div时才会执行事件x1该如何改动?

<div id=x style='width:200px;height:200px;background:red;'>
</div>
<p id=demo></p>
<script>
document.attachEvent('onmouseover',x1)                          
function x1(){document.getElementById('demo').innerHTML='123';}
</script>

展开
收起
a123456678 2016-03-11 17:33:22 2043 分享 版权
1 条回答
写回答
取消 提交回答
  • 楼主可以写一个事件监听的对象,里面有两个方法:addHandler和removeHandler方法,调用的时候直接使用"对象名.方法",例如: evenUil.addHandler(obj,type,fn) 这里面三个参数对应的是: 你要绑定的目标(相当于你这里的x),事件类型(相当于你这里的mouseover.这里就不用加on了),写一个你要实现功能的函数(相当于你这里的x1()),

    var eventUil = {
    
      addHandler:function(obj,type,fn){
        if(obj.addEventListener){
          obj.addEventListener(type,fn,false);
        }else if(obj.attachEvent){
          obj.attachEvent("on"+type,fn);
        }else{
          obj["on"+type] = fn;
        }
      },
      removeHandler:function(obj,type,fn){
        if(obj.removeEventListener){
          obj.removeEventListener(type,fn,false);
        }else if(obj.deattachEvent){
          obj.detachEvent("on"+type,fn);
        }else{
          obj["on"+type] = null;
        }
      }
    }
    2019-07-17 18:59:44
    赞同 展开评论
问答地址: