急!!图片层拖动问题

crazy1062 2010-02-16 12:28:49
各位高手帮忙看一下这一段代码
我希望能在FF中实现下段代码的效果,下段代码只适合IE中,在FF中就拖不动了,不明原因,如果哪位高手能解决,麻烦贴一下代码,感激不尽。
各位高手可以自己加张图片在IE中看看效果。。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title></title>
<style>
body{background:#000; }
.box{
width:360px;
height:360px;
border:5px solid #555;
overflow:hidden;
position:relative;
margin:0 auto;
}
.box img{
cursor:move;
position:absolute;
left: -10px;
top: -7px;
}
</style>
</head>
<body>
<div class="box" id="map"><img src="ditu.jpg"></div>
</body>
<script type="text/javascript">
function drag(box) {
var _box = document.getElementById(box),el = _box.getElementsByTagName("IMG")[0],
r = el.offsetWidth - _box.offsetWidth,bi = el.offsetHeight - _box.offsetHeight;
function getXY(e) {
return e ? [e.pageX, e.pageY] : [event.clientX, event.clientY]
};
el.onmousedown = function(e) {
var a = getXY(e),b = [el.offsetLeft,el.offsetTop];
this.setCapture ? this.setCapture() : e.preventDefault();
document.onmousemove = function(e) {
var c = getXY(e);
el.style.left = Math.max( - r, Math.min(0, c[0] - a[0] + b[0]));
el.style.top = Math.max( - bi, Math.min(0, c[1] - a[1] + b[1]));
}
};
document.onmouseup = function(e) {
e || el.releaseCapture();
document.onmousemove = null;
}
};
drag('map');
</script>
</html>
...全文
65 4 打赏 收藏 举报
写回复
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
crazy1062 2010-02-16
  • 打赏
  • 举报
回复
引用 3 楼 jnwentao 的回复:
试着去理解一下
我写的代码中有边界限定
只要把position改为相对(relative)
并且把边界限定位置改一下,自然就可以解决了

不管怎样还是非常感谢!
我已经自己解决了这个问题
jnwentao 2010-02-16
  • 打赏
  • 举报
回复
试着去理解一下
我写的代码中有边界限定
只要把position改为相对(relative)
并且把边界限定位置改一下,自然就可以解决了
crazy1062 2010-02-16
  • 打赏
  • 举报
回复
引用 1 楼 jnwentao 的回复:
Javascript 移动对象之完美解决
http://jnwentao.com/bbs/viewthread.php?tid=3&extra=page%3D1
这是我以前写的,花了不少时间,有问题再联系我

谢谢,但是我的问题是想让一张大图在一个小框中显示,图其余的部分overflow:hidden;
固定的div始终是在大图中的,无论怎么拖大图,它的边界不会显示在div中。
希望高手指点
jnwentao 2010-02-16
  • 打赏
  • 举报
回复
Javascript 移动对象之完美解决
http://jnwentao.com/bbs/viewthread.php?tid=3&extra=page%3D1
这是我以前写的,花了不少时间,有问题再联系我
相关推荐
发帖
JavaScript

8.7w+

社区成员

Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
帖子事件
创建了帖子
2010-02-16 12:28
社区公告
暂无公告