[英]jquery.event.drag - Run script for every X pixels dragged
我在创建的项目中使用jquery.event.drag.js ,并且试图找到一种方法来为我拖动的每X个像素运行脚本。 我为此仅使用X轴。 这是我现在拥有的一些代码。
$('body').drag(function( ev, dd ){
var newcell = currentCell;
var dragOffset = Math.floor(dd.offsetX / 100);
if (dragOffset >= 1) {
alert("Dragged 100px");
}
newcell += dragOffset;
$('#info').html(dragOffset + " | " + dd.offsetX);
updateStack(newcell, magnifyMode);
});
但是,此方法有效,因为此脚本针对拖动的每个像素运行,因此在拖动100像素后运行警报,但此后我针对其拖动的每个像素运行警报。 我正在寻找一种仅每拖动100px就运行一次的方法。 有任何想法吗?
我对drag.js并不完全熟悉,但是,您可以使用模数除法来确保其每100px。
x%100-如果可以被100整除,则为0,因此
if(dd.offsetX % 100 == 0)
{
alert("Dragged 100px");
}
上次发出警报时具有外部变量跟踪:
var chunkedOffset = 0;
$('body').drag(function( ev, dd ){
var newcell = currentCell;
var dragOffset = dd.offsetX / 100;
if (dragOffset > chunkedOffset) {
chunkedOffset = dragOffset;
alert("Dragged 100px");
}
newcell += dragOffset;
$('#info').html(dragOffset + " | " + dd.offsetX);
updateStack(newcell, magnifyMode);
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.