【发布时间】:2010-08-21 02:05:33
【问题描述】:
我创建了一个 jQuery 脚本来将元素拖到文档上。我完成了脚本并且运行良好。但是当我添加图像时,脚本失败了。为什么我不能在我的文档上拖动图像,我可以拖动其他元素,例如 div、span 等。我对为此目的使用 jQuery UI 不感兴趣
我的代码如下
<script language="javascript" src="jquery-1.4.2.min.js"></script>
<script language="javascript">
var x1 = y1 = 0;
var drag = false;
$(document).ready(function(e){
$('#dv').mousedown(function(e){
x1 = e.pageX - parseInt($('#dv').css('left'));
y1 = e.pageY - parseInt($('#dv').css('top'));
drag = true;
})
$(document).mouseup(function(e){ drag = false; })
$(document).mousemove(function(e){
if(!drag) return
$('#dv').css('left',eval(e.pageX - x1)+'px')
$('#dv').css('top',eval(e.pageY - y1)+'px')
})
});
</script>
请检查此olario.com/jquery/first.php(带有文本的普通 div)是否正常工作
第二个olario.com/jquery/second.php,不适用于图片
我花了两个星期来解决这个问题,希望这个论坛能帮助我
提前非常感谢
【问题讨论】:
-
奇怪,这两个例子都在 Chrome 上运行得很好。(虽然 img 不会停止 onmouseup)
-
我也在 chrome 中尝试过,唯一的问题是浏览器在我拖动时试图选择图像。也许你可以让一个 div 可拖动并将图像作为背景应用到它上面?
-
顺便说一句,如果您正在寻找更多功能,例如,那里有类似这样的脚本,例如jQuery UI Draggable。我不主张为此包含另一个库,但如果它提供您所追求的其他功能,您可能需要考虑它。
标签: javascript jquery