2014-12-18 2 views
0

Проблема в том, что я создал динамическую навигацию ... Вы нажимаете на тег a, который имеет функцию, которая отображает некоторые кнопки. Я назначил функцию тегу a с помощью addEventListener.Некоторые проблемы в IE11

Он работает во всех браузерах, но IE ...

Когда я нажимаю метки, кнопки не становятся видимыми. И ошибка не появляется.

PS: Я испанский кстати, мне очень жаль мой английский: 3

/* */Javascript

window.onload = function() { 
    var boton_menu = document.getElementById("boton_menu"); 

    /* Compatibilidad con navegadores web */ 
    if(boton_menu.addEventListener){ 
     boton_menu.addEventListener("click", menu_usuario, false); 
    } else { 
     if(boton_menu.attachEvent){ 
      boton_menu.attachEvent("onclick", menu_usuario); 
     } 
    } 
} 

/* Despliega el menú del usuario*/ 
function menu_usuario() { 
    var boton_menu = document.getElementById("boton_menu"); 
    var perfil = document.getElementById("perfil"); 
    var ajustes = document.getElementById("ajustes"); 
    var desconectar = document.getElementById("desconectar"); 

    if(boton_menu.className == ""){ 
     boton_menu.className = "active"; 
     perfil.className = "active"; 
     ajustes.className = "active"; 
     desconectar.className = "active"; 
    } else { 
     boton_menu.className = ""; 
     perfil.className = ""; 
     ajustes.className = ""; 
     desconectar.className = ""; 
    } 
} 
+1

Почему дону Вы используете методы jQuery, например '.show()' для обработки этого эффекта? Он оптимизирован для работы во всех современных браузерах. – bodruk

+1

Ваш код должен работать в IE11 как есть. У вас есть правильный DTD в начале файла? Хотя альтернатива 'attachEvent' тоже должна позаботиться об этом. – Teemu

+0

Проблема не в том, что она оптимизирована ... Это то, что когда я нажимаю на тег, это ничего не происходит ... – Antonio

ответ

1

Это работает в IE:

<!DOCTYPE html> 
<html> 
    <head> 
     <link rel="stylesheet" href=""> 
     <meta charset="utf-8"> 
     <meta name="author" content="Antonio Bueno"> 
     <title>Button Problems</title> 
     <style> 
      a {background-color: red; color: #FFF; padding: 10px;} 
      a.active {background-color: blue;} 
     </style> 

     <script> 
      window.onload = function(){ 
       var some_button = document.getElementById("some_button"); 

       if(some_button.addEventListener){ 
        some_button.addEventListener("click", DisplayButton, false); 
       } else { 
        if(some_button.attachEvent){ 
         some_button.attachEvent("onclick", DisplayButton); 
        } 
       } 
      } 

      function DisplayButton(){ 
       var some_button = document.getElementById("some_button"); 
       var another_button = document.getElementById("another_button"); 

       if(some_button.className == ""){ 
        some_button.className = "active"; 
        another_button.style.display = "none"; 
       } else { 
        some_button.className = ""; 
        another_button.style.display = "inline-block"; 
       } 
      } 
     </script> 
    </head> 

    <body> 
     <a id="some_button" class="">Click on me</a> 
     <input id="another_button" type="submit" value="example" /> 
    </body> 
</html> 
Смежные вопросы