如何用间隔刷新鼠标向下的事件参数
How to refresh event argument on mouse down with interval?
由于onmousedown
不像你持有onkeydown
那样工作,我不得不妥协并创建我自己的风格,到目前为止,我已经想到了这个:
can.onmousedown = function(e) {
map.moving = setInterval(function() {
console.log(e.pageX + ' ' + e.pageY);
map.posX = e.pageX;
map.posY = e.pageY;
}, 70);
}
can.onmouseup = function(e) {
clearInterval(map.moving);
}
这工作得很好,我现在唯一的问题是,e
参数只在初始点击时设置,所以鼠标的坐标在整个间隔内保持不变,你知道我该如何解决这个问题吗?
您还需要调用mousemove
can.onmousemove = function(e) {
if( map.moving ) {
console.log(e.pageX + ' ' + e.pageY);
map.posX = e.pageX;
map.posY = e.pageY;
}
};
can.onmousedown = function(e) {
map.moving = true;
};
can.onmouseup = function(e) {
map.moving = false;
};
可选地,您可能希望解耦并减慢mousemove
处理程序的执行,因为这种情况发生了(像scroll events
一样,非常快)。这也可以通过调用timeouts
来实现。
试试这个:
can.onmousedown = function(e) {
map.moving = setInterval(function() {
e = e || window.event;
console.log(e.pageX + ' ' + e.pageY);
map.posX = e.pageX;
map.posY = e.pageY;
}, 70);
}
can.onmouseup = function(e) {
clearInterval(map.moving);
}
相关文章:
- Firefox中的JavaScript事件参数
- 将参数传递给 jQuery .click WHILE 保留事件参数
- onWindowResize事件参数使用Three.js
- 如何在 redis 中将 JS 对象传递给它自己的事件参数 - 连接事件上的哨兵
- 在剑道的自定义绑定器中添加事件参数
- 加载处理程序上的事件参数
- 将jQuery触发器中的事件参数发送到iframe
- 在ExtJS中访问事件参数
- node-webkit如何解析'事件参数
- 如何用间隔刷新鼠标向下的事件参数
- Javascript/JQuery 事件参数.我不明白这个“e”论点是什么或做什么
- Firefox onkeypress事件没有传递事件参数
- 我如何从JS函数中获得触发事件而不传递事件参数
- 如何获取getUIKit事件参数的className
- 事件参数及其用途
- 在全局变量中存储mousemove事件参数可能会导致性能问题
- 为什么stopPropagation在回调中使用事件参数,而不是使用'this'
- 文档.ie8和IE7未定义onmouseover和onmouseout事件参数
- 在使用 ClientScript.GetPostBackEventReference 时将事件参数从 javascrip
- 如何为复选框单击事件使用自定义事件参数