问答详情
源自:5-1 三个关键鼠标拖拽事件

addEventListener事件

请问事件1是怎么在Chrome调试的?怎么我的报错呢?报错提示:"Cannot read proerty 'addEventListener' of null",请问怎么解闷?

提问者:程序员琪辉 2015-04-23 18:07

个回答

  • 梦身
    2015-08-03 17:13:06
    已采纳

    我也有这个问题,是这样解决的:

    将监听事件放到一个函数中,再放到window.onload中就可以了,我这样后就好了,但具体原因不清楚哈

    function dd(){
    g('dialogDrag').addEventListener('mousedown',function(e){
    	var e=e || window.event;
    	startX=e.pageX-g('dialogMove').offsetLeft;
    	console.log(startX);
    	startY=e.pageY-g('dialogMove').offsetTop;
        drag=true;
    })
    }
    window.onload=function(){dd();}


  • 程序员琪辉
    2015-04-23 18:24:30

    我的代码是这样的:

    //鼠标按下可拖动状态

    var mouseOffsetX = 0; //鼠标当前X坐标

    var mouseOffsetY = 0; //鼠标当前Y坐标

    var isDraging = false; //是否可拖动标记

    $('modal-header').addEventListener('mousedown', function(evt) {

    var e = evt || window.Event;

    mouseOffsetX = e.pageX - $('modal-content').offsetLeft;

    mouseOffsetY = e.pageY - $('modal-content').offsetTop;

    isDraging = true;

    });


  • 慕郎_莲华
    2015-04-23 18:21:00

    用法是obj.addEventListener(); 你这个错就是obj不存在,检查一下