怎么用javascript实现图片移动?我只要一张图片向左移动一小段距离就好。

 我来答
似水往破
2011-07-31 · 超过23用户采纳过TA的回答
知道答主
回答量:59
采纳率:0%
帮助的人:57.8万
展开全部
创建个DIV,把图片当里面,比如这样<div><img href = "asd"></div>然后在DIV属性里加上position : absolute,具体是这样<div style = "position:absolute"><div>

你要是前面都用HTML做了那直接var pic = getElementById("你的DIV的ID号,要自己先前写好")
或者var pic = getElementsByTagName("div")[你的页面里图片在第N个DIV里就写N-1]

然后调用setInterval
setInterval( " pic.style.left -= 3", 300);//每300毫秒 执行pic.style.left -= 3 一次
想停掉它调用clearInterval();
只想移动一次这样:setTimeout( " pic.style.left -= 3", 300);

全JS表示
var createDiv = document.createElement("div");
createDiv.style.height = "111px";
createDiv.style.width = "111px";
document.body.appendChild(createDiv);
createDiv.style.position = "absolute";
createDiv.style.overflow = "visible";//这里看你具体需要吧
createDiv.style.top = "111px";
createDiv.style.left = "111px";

var createImg = document.createElement("img");
createImg.setAttribute("src","https://gss0.bdstatic.com/70cFsjip0QIZ8tyhnq/img/logo-zhidao.gif");
createImg.height = 111;
createImg.width = 111;
createDiv.appendChild(createImg);

setInterval( " createDiv.style.left -= 3", 300);
更多追问追答
追问
pic.style.left -= 3
会移动多少?
追答
一次3个像素
最后那句setInterval( " createDiv.style.left -= 3", 300); 改下
var left = parseInt( createDiv.style.left);
setInterval( " left -= 3; createDiv.style.left = String(left)+'px'", 300);

不测试真容易出问题>_<
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式