Javascript使用鼠标点击保持导航?
我有一个可滚动的div标签(溢出)。现在我想用鼠标点击并按住,然后移动来上下导航(就像AdobeReader中的手动光标功能是如何工作的) 有没有js脚本来实现这一点?Javascript使用鼠标点击保持导航?,javascript,jquery,mouseevent,Javascript,Jquery,Mouseevent,我有一个可滚动的div标签(溢出)。现在我想用鼠标点击并按住,然后移动来上下导航(就像AdobeReader中的手动光标功能是如何工作的) 有没有js脚本来实现这一点? 具体来说,我正在使用jquery,任何jquery插件来实现这一点?我不知道任何插件,但这应该不会太难: $(function() { $('#foo').mousedown(function(e) { var start = e.pageY; var startPos = $(this)
具体来说,我正在使用jquery,任何jquery插件来实现这一点?我不知道任何插件,但这应该不会太难:
$(function() {
$('#foo').mousedown(function(e) {
var start = e.pageY;
var startPos = $(this).scrollTop();
var el = $(this);
$().mousemove(function(e) {
var offset = start - e.pageY;
el.scrollTop(startPos + offset);
return false;
});
$().one('mouseup', function(e) {
$().unbind();
});
// Only if you want to prevent text selection
return false;
});
});
可在此处找到一个工作示例:
伟大的正是我要找的。谢谢!现在,当尝试在#foo(更大的z索引)上放置另一个div框时,会出现另一个问题。该代码也适用于该div框。您知道如何删除它吗?您必须停止嵌套元素中的事件传播-当您单击嵌套元素时,mousedown事件会传播回
#foo
元素。解决这个问题的简单方法是使用$('#foo*')代码>。此代码段停止来自#foo
的所有子级的事件传播。这可能不是所有情况下都需要的,但应该对你有用。那不行。我做了一个event.stopPropagation()而不是:-)huy,其效果与返回false相同代码>。