2 つの条件ステートメントがあります。1 つは機能し、もう 1 つは機能しません。その理由を探るのに 3 日間を費やしました。うまくいけば、ここの誰かが問題に光を当てることができます.
作業ステートメント - これは、div を display:none と :block の間で切り替えるだけです
case 'addressSearch':
var div = document.getElementById('addsearch');
if (div.style.display !== 'block') {
div.style.display = 'block';
}
else {
div.style.display = 'none';
}
これは壊れたものです - div の表示プロパティに応じて別のページに移動するはずです。リダイレクトしますが、display の値には依存しません。理由はわかりませんが、div.style.display は常に空の文字列です。
function loginCheck(){
var div = document.getElementById('loin');
if (div.style.display !== 'block') {
window.location = '/login.shtml';
}
else {
window.location = '/calendar.shtml';
}
};
css は #loin{display:block;} で、html は
<div class="button" id="tmcb" onclick="loginCheck()">To My Calendar</div>
編集: 新しい if ステートメント
if (getComputedStyle(div, null).display !== 'block') { //something };
これは機能します