繁体   English   中英

jquery.event.drag-每拖动X个像素运行脚本

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM