这是我更新和修改过的脚本,它完全可以工作,除了我想要普及它...观察****我怎么能这样做,这样我function(e){BOX.Draggable.elemen = e.target || e.srcElement; elementDraggable(e);每次都不需要使用可拖动功能对于不同的元素?
window.onload = addListeners;
var BOX = function(){
return{
Draggable: function(){}
};
}();
function addListeners(){
document.getElementById('div').addEventListener('contextmenu', menumove, false);
**document.getElementById('div').addEventListener('mousedown', function(e){BOX.Draggable.elemen = e.target || e.srcElement; elementDraggable(e);}, false);**
}
function elementDraggable(e){
var e = e || window.event;
var div = BOX.Draggable.elemen;
BOX.Draggable.innerX = e.clientX + window.pageXOffset - div.offsetLeft;
BOX.Draggable.innerY = e.clientY + window.pageYOffset - div.offsetTop;
window.addEventListener('mousemove', elementMove, false);
window.addEventListener('mouseup', function(){
window.removeEventListener('mousemove', elementMove, false);
}, true);
function elementMove(e){
div.style.position = 'absolute';
div.style.left = e.clientX + window.pageXOffset …Run Code Online (Sandbox Code Playgroud) 我正在更新/调试和扩展我的可拖动脚本的功能,我需要能够实现以下结果:
whatever.onRightMouseButtonMousedown = preventDefault();
Run Code Online (Sandbox Code Playgroud)
我做了很多研究无济于事,但是,我知道有可能这样做,因为当我使用jquery-ui draggable时,它会阻止你用鼠标右键拖动时拖动元素的能力.我想模仿这种能力,并了解它是如何工作的,这样我就可以根据需要现在和将来实施它.
注意:请不要向我提供有关如何使用jquery或jquery-ui draggable的信息(我已经熟悉它),我想了解它们是如何实现的,或者如何实现对mousedown的检测是否正确鼠标按钮,以便我可以用鼠标右键阻止元素被拖动.
javascript right-click draggable mouseevent jquery-ui-draggable