如何使用JavaScript切换元素的边距?

DaK*_*der -3 html javascript toggle

我试图通过改变边距将一个div移到一边,然后返回一个转换.我有一个按钮,我想切换它的边距.div向右移动,但是当我再次单击时,它不会移回到它的原始位置.这就是我所拥有的:

HTML

<div id="movingdiv">
<a href="#" onclick="toggle()">Click Me!</a>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS

#movingdiv {
overflow: hidden;
left: 0;
top: 0;
right: 0;
bottom: 0;
background-color: gray;
-webkit-transition-duration: 0.3s;
-moz-transition-duration: 0.3s;
-o-transition-duration: 0.3s;
transition-duration: 0.3s;
}
Run Code Online (Sandbox Code Playgroud)

JavaScript的

function toggle () {

var el = document.getElementById("movingdiv");
if ( el.style.marginLeft="250px" ) {

    el.style.marginLeft="250px";

}

else {

    el.style.marginLeft="0px";

}

}
Run Code Online (Sandbox Code Playgroud)

它在行动:http: //codepen.io/dakoder/pen/nfimJ

Luk*_*kas 5

你正在做作业,而不是检查平等.此外,您的else病情和if状况是混合的.将其更改为以下内容:

if ( el.style.marginLeft==="250px" ) {
    el.style.marginLeft="0px";
} else {
    el.style.marginLeft="250px";
}
Run Code Online (Sandbox Code Playgroud)