2016-02-08 3 views
1
<div onclick="myFunction();"> Click Me</div> 
<div id="nav" style="" class="hide"> 
    <ul> 
     <li>sample</li> 
     <li>sample</li> 
     <li>sample</li> 
    </ul> 
</div> 
function myFunction(){ 
    if ("show"){ 
     document.getElementById('nav').style.display='none'; 
      } else if ("hide"){ 
       document.getElementById('nav').style.display='none'; 
      } 
    } 

OnClick замковое меня БТН, я хочу показать & скрыть это «нав». используя класс addclass remove.Javascript просто добавить класс удалить класс

Пожалуйста, помогите мне в этом чистом javascript.

Спасибо.

ответ

1

Может быть, это будет работать лучше?

<div id="btn"> Click Me</div> 
<div id="nav" style="" class="hide"> 
    <ul> 
     <li>sample</li> 
     <li>sample</li> 
     <li>sample</li> 
    </ul> 
</div> 

<script> 
    var menu = document.getElementById('nav'); 
    document.getElementById('btn').onclick = function() { 
     if (menu.className == "hide"){ 
      menu.className = "show"; 
     } else { 
      menu.className ='hide'; 
     } 
    } 
</script> 

<style> 
    .show { 
     display: inherit; 
    } 
    .hide { 
     display: none; 
    } 
</style> 
+0

Спасибо за это, это отлично работает. Как сделать мгновение отображения - block & inline. Я хочу сделать это с помощью класса ADD и удалить класс. – Solomon

+0

Не знаете, что вы хотите, вам нужно иметь слишком классы, такие как 'hide' и' display'? Не забывайте повышать, если я помог вам :) @ user3852173 – Gwendal

+0

У меня есть 2class для id = nav onclick btn Я хочу добавить & удалить класс в nav = hide & show. – Solomon

2

Вы можете сделать что-то вроде этого:

myFunction() { 
    document.getElementById("nav").classList.toggle("hide"); 
} 

JSFiddle

+0

Как я это реализовать? Неожиданный токен - сообщение об ошибке его показ – Solomon

+0

Это работает здесь @ Соломон http://jsfiddle.net/8yxa2mnL/ – Albzi

+0

Удивительный это работает для меня. Спасибо – Solomon

0

Сохраните свой элемент, только для более аккуратного кода.

var myElement = document.getElementById('nav'); 

Использование дисплея

myElement.style.display = 'none'; // Hide element 
myElement.style.display = 'block'; // Show block elements (div, p) 
myElement.style.display = 'inline'; // Show inline elements (span, a) 

Использование Видимость:

myElement.style.visibility = 'hidden'; // Hide element 
myElement.style.visibility = 'visible'; // Show element 

Таким образом, используя один и тот же код для проверки стилей в пределах, если заявления.

function myFunction() 
{ 
    if (myElement.style.display == "none") 
     myElement.style.display='block'; 
    else 
     myElement.style.display='none'; 
} 

Пример: http://jsfiddle.net/366aofbo/

Смежные вопросы