Javascript JS-使图像随机移动

Javascript JS-使图像随机移动,javascript,html,css,Javascript,Html,Css,我有一个我想随机移动的图像,为此我创建了一个函数,在这里我将变量作为参数传递,并更改图像样式,使其移动 以下是我的图像代码: //移动骆驼 var camel=document.getElementsByClassName('camel')[0]; var mL=camel.style.left; var mT=camel.style.top; var op=camel.style.opacity; var-marginH=0; var-marginV=0; var x; 变量方向=(方向,边

我有一个我想随机移动的图像,为此我创建了一个函数,在这里我将变量作为参数传递,并更改图像样式,使其移动

以下是我的图像代码:

//移动骆驼
var camel=document.getElementsByClassName('camel')[0];
var mL=camel.style.left;
var mT=camel.style.top;
var op=camel.style.opacity;
var-marginH=0;
var-marginV=0;
var x;
变量方向=(方向,边距)=>{
console.log(dir);
x=数学地板(数学随机()*2);
如果(x==0){
dir=dir+5;
}
否则{
dir=dir-5;
}
边距=`${dir}px`;
op=1;
log(`moving${dir}`)
}
setInterval(函数(){
方向(边缘,毫升)
}, 1000);
.camel{
位置:绝对位置;
宽度:100px;
高度:100px;
过渡:所有2个容易进入;
显示:块;
}

您只定义了一个
margin
变量,但忘记将其应用于元素:

camel.style.margin = margin;
//移动骆驼
var camel=document.getElementsByClassName('camel')[0];
var mL=camel.style.left;
var mT=camel.style.top;
var op=camel.style.opacity;
var-marginH=0;
var-marginV=0;
var x;
变量方向=(方向,边距)=>{
console.log(dir);
x=数学地板(数学随机()*2);
如果(x==0){
dir=dir+5;
}
否则{
dir=dir-5;
}
//申请新保证金
边距=`${dir}px`;
camel.style.margin=边距;
//请参阅代码下面的其他信息,了解为什么这不起作用
op=1;
log(`moving${dir}`)
}
setInterval(函数(){
方向(边缘,毫升)
}, 1000);
.camel{
位置:绝对位置;
宽度:100px;
高度:100px;
过渡:所有2个容易进入;
显示:块;
}

“每次函数运行时,变量marginH被设置为0”-您从未将该值设置为零以外的任何值。为什么您希望它会有所不同?不,您正在将5添加或删除到
dir
,这是经过的
marginH
的副本value@BrunoSousa一个简单的例子@萝卜你在小提琴中的意思可能是
val+=100
,而不是
val+100
。对不起,是的,我说了。更新此问题已解决@ostone先生非常感谢。也学到了一些新东西。