#toggle
Вопрос:
Возникли проблемы с простой функцией переключения, просто используя vanilla js. Утверждение «еще», похоже, не работает. Когда я нажимаю на кнопку, верхний раздел соскальзывает вниз. Однако процесс не идет вспять. Я думаю, что это может быть простая/глупая ошибка, но я не могу найти, что не так. С нетерпением жду момента «о да». Спасибо.
lt;script type="text/javascript"gt; function toggle(){ var marginChange = document.getElementById("layer1"); if (marginChange.style.marginTop = "50px"){ marginChange.style.marginTop = "200px"; } else { //marginChange.removeAttribute(style); marginChange.style.marginTop = "50px"; } } lt;/scriptgt; lt;!DOCTYPE htmlgt; lt;htmlgt; lt;headgt; lt;titlegt;lt;/titlegt; lt;style type="text/css"gt; #button{ width: 75px; height: 30px; color: red; } #layer0{ background: black; z-index:0; width: 400px; height: 400px; position: absolute; } #layer1{ margin-top: 50px; background: grey; z-index: 1; width: 400px; height: 400px; position: absolute; transition-property: margin-top; transition-duration: .50s; transition-timing-function: ease-out; } .navItem{ width: auto; height: 35px; margin-top: 1px solid white; } lt;/stylegt; lt;/headgt; lt;bodygt; lt;button id="toggleButton" onclick="toggle();"gt;Click Toggle Buttonlt;/buttongt; lt;div id="layer0"gt;lt;/divgt; lt;div id="layer1"gt;lt;/divgt; lt;/bodygt; lt;/htmlgt;
Комментарии:
1. Понял, что забыл, что при выполнении условного оператора необходимо использовать оператор==. Если нет, функция просто выполняет первый оператор, не связанный с ключевым словом.