2017-08-11 9 views
-1

私は1つのボタンでメニューを開く/閉じるしたいと思います、私はあなたがそれをよりよく説明する必要があるが、私は、私はあなたが望むものを理解だと思うだけのJavascript

function openNav() { 
 
    document.getElementById("myNav").style.height = "100%"; 
 
} 
 

 
function closeNav() { 
 
    document.getElementById("myNav").style.height = "0%"; 
 
}
<a href="javascript:void(0)" class="closebtn" onclick="closeNav()">&#9776;</a>

+0

トグル関数であるべきところ 'myNav'要素がありますか? –

+0

トグルメニューを意味しますか? –

+0

メニューのHTMLコード。あなたは隠して表示するメニューのhtmlコードを追加する必要があります – MJK

答えて

0

を使用します。

ディスプレイブロックを使用してください。このような

何か:

function openNav() { 
var menu = document.getElementById("myNav").style.display; 

If (menu == "block") { 
menu="none"; 
}else{ 
menu="block"; 
}} 

// Open and close div 
<a href="javascript:void(0)" class="closebtn" onclick="openNav()">&#9776;</a> 

私は自分の携帯電話からこれを書いているので、構文が正しいかはわかりません。

しかし、私はそれが作品だと思います。

私に知らせてくれます。

+0

もしかしたら?それが私が探しているもの、シングルボタン。次回はもっと申し訳ありません。 – Iceberg

+0

今すぐお試しください。私はコードを編集しました。 –

+0

動作しません。あなたは何を間違えたのですか?私は学びたい – Iceberg

0

それは

function toggleNav(){ 
 
     var myNav = document.getElementById("myNav"); 
 
     if(!myNav) return; 
 
     myNav.style.display = myNav.style.display.toLowerCase() != 'none'? 'none' : 'block'; 
 
    }
<a href="javascript:void(0)" class="closebtn" onclick="toggleNav()">&#9776;</a> 
 

 
<div id="myNav" style="width: 100px; height: 100px; background: #ff0000; display:none;"></div>

+0

さて、ありがとう。まだJSを学んでいます:) – Iceberg

+0

自動的に開けないようにするにはどうしたらいいですか? – Iceberg

+0

ディスプレイセット ':NONE' =>' '

0
<div href="javascript:void(0)" class="closebtn" onclick="toggleNav()">&#9776;</div> 

<div id="myNav" class="overlay"> 
<div class="overlay-content"> 
<a href="#">About</a> 
<a href="#">Services</a> 
<a href="#">Clients</a> 
<a href="#">Contact</a> 
</div> 
</div> 

<style> 
html, body{ 
margin: 0; 
} 
.overlay { 
height: 0%; 
width: 100%; 
background-color: rgba(0,0,0, 0.9); 
overflow-y: hidden; 
} 

.overlay-content { 
position: relative; 
text-align: center; 
margin-top: 50px; 
} 

.overlay a { 
padding: 8px; 
text-decoration: none; 
font-size: 36px; 
color: #818181; 
display: block; 
transition: 0.3s; 
} 

.overlay a:hover, .overlay a:focus { 
color: #f1f1f1; 
} 

.closebtn{ 
position: absolute; 
float: right; 
right: 15px; 
top: 10px; 
font-size: 30px; 
cursor: default; 
color: #eee 
} 
</style> 

<script> 
function toggleNav(){ 
    var myNav = document.getElementById("myNav"); 
    if(!myNav) return; 
    myNav.style.display = myNav.style.display.toLowerCase() != 'none'? 'none' : 'block'; 
} 
</script> 
+0

それを正しく取ることができました、ありがとうございました:)これは私がテキストエディタでそれを書いた方法ではありません。 – Iceberg