我对Javascript比较陌生,我对jQuery的拖放有问题。 这些是我的文件:
dom.html
<!DOCTYPE HTML>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>DOM</title>
<meta name="author" content="meme" />
<!-- Date: 2012-02-21 -->
<script type="text/javascript" src="jquery-1.7.1.js"></script>
<script type="text/javascript" src="ui/jquery.ui.core.js"></script>
<script type="text/javascript" src="ui/jquery.ui.widget.js"></script>
<script type="text/javascript" src="ui/jquery.ui.mouse.js"></script>
<script type="text/javascript" src="ui/jquery.ui.draggable.js"></script>
<script type="text/javascript" src="dom.js"></script>
</head>
<body oncontextmenu="return false" onselectstart="return false">
</body>
</html>
和dom.js
var start = function () {
var div = document.createElement('div');
div.style.width = '50px';
div.style.height = '50px';
div.style.border = '1px solid black';
div.id = 'drag';
document.body.appendChild(div);
$('#drag').draggable({
stop: function(event, ui) {
var xPos = event.pageX/2;
var yPos = event.pageY/2;
this.style.left = xPos + 'px';
this.style.top = yPos + 'px';
var start = new Date().getTime();
while ((new Date().getTime() - start) < 1000){
// Do nothing
}
}}
);
}
window.onload = start;
问题是在丢弃之后div的定位延迟(由于while循环)。我的问题是:有没有办法在while循环开始之前更新div的位置?
由于