87,910
社区成员
发帖
与我相关
我的任务
分享
<div class="left">
<div class="img">
<img src="images/img.jpg">
</div>
</div>
.left
{
width: 530px;
height: 340px;
overflow: hidden;
}
.left{postiton:relative;} /*原来的样式你自己加上*/
.img{position:absolute;left:0;top:0;right:0;bottom:0;}
.img img{position:absolute;top:0;left:0;}
然后修改下html
<img src="images/img.jpg" draggable="false" id="img"/>
最后加上脚本:
window.onload = function(){
var draging = false, lastPoint;
var body = document.body;
var img = document.getElementById('img');
img.onmousedown = function(e){
e = e || window.event;
var x = e.clientX;
var y = e.clientY;
if(!lastPoint){
lastPoint = {};
}
lastPoint.x = x;
lastPoint.y = y;
draging = true;
if(e.preventDefault){
e.preventDefault();
}else{
return false;
}
}
img.ondragstart = function(e){
e = e || window.event;
if(e.preventDefault){
e.preventDefault();
}else{
return false;
}
}
img.onmouseup = function(){
draging = false;
lastPoint = undefined;
}
if(document.addEventListener){
body.addEventListener('mousemove',function(e){
onMouseMove(e);
},false);
body.addEventListener('mouseup',onMouseUp,false);
}else{
body.attachEvent('onmousemove',function(){
var event = window.event;
onMouseMove(event);
})
body.attachEvent('onmouseup',onMouseUp);
}
function onMouseMove(e){
if(!draging){
return;
}
var img = document.getElementById('img');
if(lastPoint){
var x = e.clientX , y = e.clientY;
var imgTop = parseFloat(img.style.top || '0');
var imgLeft = parseFloat(img.style.left || '0');
var changeX = x - lastPoint.x , changeY = y - lastPoint.y;
img.style.top = imgTop + changeY + 'px';
img.style.left = imgLeft + changeX + 'px';
lastPoint.x = x, lastPoint.y = y;
}
}
function onMouseUp(){
draging = false;
lastPoint = undefined;
}
}