关于JavaScript的问题拖拽的问题

为什么设定了onmousedown和onmousemove移动但是div不会移动<script>window.onload=function(){varoDiv=docu... 为什么设定了onmousedown和onmousemove 移动 但是div不会移动
<script>
window.onload=function()
{var oDiv=document.getElementById('div1')
var disX=0;
var disY=0;
oDiv.onmousedown=function(ev)
{
var oEvent=ev||event;
disX=oEvent.clientX-oDiv.offsetLeft;
disY=oEvent.clientY-oDiv.offsetTop;};
oDiv.onmousemove=function(ev)
{
var oEvent=ev||event;
oDiv.style.left=oEvent.clientX-disX+'px';
oDiv.style.top=oEvent.clientY-disY+'px';}
</script>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>#div1{width: 100px;height: 100px;background:red;position: absolute;}</style>
<script>

.....
</script>

</head>
<body>
<div id="div1"></div>
</body>
</html>
展开
 我来答
百度网友db2a4a18
2017-01-13 · TA获得超过202个赞
知道小有建树答主
回答量:363
采纳率:85%
帮助的人:233万
展开全部
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>#div1{width: 100px;height: 100px;background:red;position: absolute;}</style>
<script>
window.onload=function()
{
var oDiv=document.getElementById('div1')
var disX=0;
var disY=0;
var isDrag = false;
oDiv.onmousedown=function(ev)
{
var oEvent=ev||event;
isDrag = true;
disX=oEvent.clientX-oDiv.offsetLeft;
disY=oEvent.clientY-oDiv.offsetTop;
};
oDiv.onmouseup = function(){
isDrag = false;
};
oDiv.onmousemove=function(ev)
{
if(isDrag){
var oEvent=ev||event;
oDiv.style.left=oEvent.clientX-disX+'px';
oDiv.style.top=oEvent.clientY-disY+'px';
}
};
}
</script>
</head>
<body>
<div id="div1"></div>
</body>
</html>

用个变量做标记,检测是否按下鼠标.

涃__
2017-01-13 · 超过88用户采纳过TA的回答
知道答主
回答量:158
采纳率:33%
帮助的人:108万
展开全部
从格式上来说,oDiv.style.top=oEvent.clientY-disY+'px';}后面少了一个}

不过你要想实现拖拽功能,,你的代码有点问题。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式