jQuery 事件发布

标签 jquery jquery-events onmousedown onmouseup

我对 jQuery 比较陌生,所以如果我问一个基本问题,我很抱歉,但我在事件触发方面遇到了问题。现在我正在尝试设计一种图像平移工具,用户可以在查看窗口(固定 div)内向任何方向平移图像。鼠标按下时,该函数将开始执行一些计算,鼠标移动时,在将值传递到函数之前执行更多计算

$(this).css('background-position', both);

line,其中两者都是新计算的位置。

到目前为止,它一直有效,但我在从 mousemove 事件释放时遇到问题。在最初的鼠标按下和鼠标移动之后,我似乎无法通过鼠标松开来释放平移,并且用户可以在不单击的情况下平移图像。

这是基本框架(#test 指的是查看 div):

$("#test").mousedown( function(e) {
                
/* Various Calculations*/
            
$(this).mousemove( function(f) {

/* More Calculations, variable 'both' is assigned new coord value */
                
$(this).css('background-position', both);
    });         
});

我尝试在不同的地方附加一个 mouseup 事件,但我不确定正确的位置在哪里,以及如何释放。非常感谢任何帮助!

最佳答案

要删除事件,您需要将其与对象解除绑定(bind):

$("#test").unbind("mousemove");

我不清楚你问题的其余部分

关于jQuery 事件发布,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1302865/

相关文章:

javascript - 如何使用 JavaScript 或 jQuery 检测浏览器关闭

javascript - 结束 onmousedown 事件(onmouseup?)

javascript - 虽然鼠标按下 JS

jquery - 如何摆脱 jquery (jeditable) 的困惑

jquery - Bootstrap X-可编辑、文本区域的清除按钮

javascript - jQuery :input selector not selecting :select elements?

javascript - 选择子元素(输入字段)时更改父 div 的 CSS

javascript - 隐藏滑动侧边栏并更改图标onclick

javascript - 在 IE8 中使用 jQuery 读取和更改表单操作

javascript - 检测我是否在单击元素中的元素