我有一个可拖动的如下:
<div id="_splitter" style="width: 40px; height: 40px; position: relative; z-index: 1; margin: -20px -23px auto auto; border: 3px solid gray; opaciy:.5;"></div>
在Chrome中,它只能在第一个mouseup事件之前正常工作。将div拖动到新位置后,下一次拖动会将元素移动到左上角的边距大小,因此当您第二次开始拖动时,它看起来像是一个突然跳转。
问题只发生在Chrome,FF&amp; Opera工作得很好。任何人都可以建议如何让它在Chrome中运行?
注意:我想找一个修复,而不是黑客,我知道如果我删除/重新添加可拖动它可能会起作用,但那不是我的意思在我之后。
这是一个repro HTML,抱歉没有小提琴:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>draggable</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.21/jquery-ui.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#_splitter").draggable();
});
</script>
</head>
<body>
<div>
<div id="_splitter"
style="width: 40px; height: 40px; position: relative; z-index: 1; margin: 100px auto auto 100px; border: 3px solid gray; background-color: Green;"></div>
</div>
</body>
</html>