我想使用“鼠标拖动”在框内拖动背景的位置。
CSS:
.filmmakers #map {
width : 920px;
height : 500px;
margin-top : 50px;
margin-left : 38px;
border : 1px solid rgb(0, 0, 0);
cursor : move;
overflow : hidden;
background-image : url('WorldMap.png');
background-repeat : no-repeat;
}
的HTML:
<div id = "map" src = "WorldMap.png" onmousedown = "MouseMove(this)"> </div>
Javascript:
function MouseMove (e) {
var x = e.clientX;
var y = e.clientY;
e.style.backgroundPositionX = x + 'px';
e.style.backgroundPositionY = y + 'px';
e.style.cursor = "move";
}
什么都没有发生,没有错误,没有警告,什么都没有……我已经尝试了很多事情:一个 div 内的绝对定位图像(你可以猜到为什么这不起作用),一个带有背景图像的 div 内的可拖动 div,一个带有拖放功能的表格,最后我尝试了这个:
function MouseMove () {
e.style.backgroundPositionX = 10 + 'px';
e.style.backgroundPositionY = 10 + 'px';
e.style.cursor = "move";
}
这有效,但它与鼠标的位置无关,pageX
也pageY
不起作用。
现场演示:http: //jsfiddle.net/VRvUB/224/
PS:无论你的想法是什么,请不要用JQuery写