在mousemove上调用函数

时间:2009-10-29 00:54:29

标签: javascript

我有一个java Script函数,我想在鼠标移动时调用它,所以在java脚本中调用它的方式是什么。 感谢

3 个答案:

答案 0 :(得分:3)

好吧,你并没有提供一个你想要附加处理程序的元素,但是这里是如何用body元素做的:

<html>
<head>
<script type="text/javascript">
function move() {
alert("Your mouse moved!");
}
</script>
</head>
<body onmousemove="move()">
<div>Test</div>
</body>
</html>

答案 1 :(得分:1)

你必须拥有一个可以触发事件的html元素。例如

 <div onmousemove="foo()"></div>

如果你希望它在整个页面上发生,我相信将事件放在body标签上会有效但我不确定。

以下是事件http://www.w3schools.com/jsref/event_onmousemove.asp

的参考

答案 2 :(得分:1)

Samuel和Salty都提供了附加事件监听器的坏方法!请将您的演示文稿与应用程序分开!

function move(){
    //do something on mouse move
}

function addEvent(elm, evType, fn, useCapture) {
    if (elm.addEventListener) {
        elm.addEventListener(evType, fn, useCapture);
        return true;
    }
    else if (elm.attachEvent) {
        var r = elm.attachEvent('on' + evType, fn);
        return r;
    }
    else {
        elm['on' + evType] = fn;
    }
}

function addLoadEvent(func) {
    var oldonload = window.onload;
    if (typeof window.onload != 'function') {
        window.onload = func;
    }
    else {
        window.onload = function() {
            oldonload();
            func();
        }
    }
}

function init(){
    var body = document.getElementsByTagName('body')[0];

    addEvent(body, 'mousemove', move);
}

addLoadEvent(init);

感谢Dustin Diaz event handling functions - 或使用您最喜欢的图书馆。