2017-08-11 49 views
-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

相關問題