我正在制作一个移动网站,我需要禁用原生iphone溢出滚动。为此,我在touchmove函数上调用了preventDefault,但问题是我还需要在用户调用mouseup事件后获取鼠标释放的位置。即使在touchmove事件上调用preventDefault后,如何调用mouseup事件?
我的代码现在看起来像:
document.ontouchmove = function(e){
e.preventDefault();
}
$(document).mousedown(function(e){
clickPosition = e.pageX;
});
$(document).mouseup(function(e){
releasePosition = e.pageX;
var positionDifference = clickPosition - releasePosition;
});
答案 0 :(得分:0)
像这样:
http://jsfiddle.net/KyleMuir/KGXb6/
使用.trigger()
将您的参数传递给您的其他函数(http://api.jquery.com/trigger/)
然而,对于捕获开头\ end的示例,您可能希望执行以下操作:http://jsfiddle.net/KyleMuir/KGXb6/3/
在这个例子中,我在事件范围之外创建一个变量,用于点击位置,在mousedown上不断被覆盖,然后在鼠标上引用,比使用触发器更清晰。
如果需要在 mousedown之后完成某些事情,那么你可以使用触发器来调用某个函数。
希望这会有所帮助:)