我想知道结合基本jQuery事件的最佳方法是什么。
例如,如果我想跑步
function(e) {
console.log(e.pageX)
}
两者都
$('selector').mousedown
和
$('selector').mousemove
或何时
$('selector').mouseup
我知道
$('selector').on('mousemove 'mouseup', ...)
但这使我的事件处理程序响应mousemovev或mouseup,而无需验证“ mousemove”时是否验证鼠标是否处于按下状态。
是否有一种规范的方法可以组合事件侦听器以反映所需的逻辑?
编辑: 对于我正在构建的应用程序,我试图在用户突出显示页面上的文本时不断更新表单的隐藏字段,从而实现所需的事件组合。在我的示例中,我试图从项目的特定功能中抽象出来,以使问题的本质更加明显,并更容易适应未来读者的需求。
答案 0 :(得分:0)
尝试一下此代码。我想这接近您想要的。基本上,我仅在触发mousedown时绑定mousemove函数。 mouseup用于处理文本突出显示的结尾。祝你好运!
$(document).ready(function(){
$(document).mousedown(function(){
$(document).bind( "mousemove", function() {
console.log(window.getSelection().toString());
});
});
$(document).mouseup(function(){
$(document).unbind("mousemove");
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>Hello, world!</p>