2013-02-13 2 views
1

Привет, я всегда использую этот код jquery для меню, проблема в том, что теперь я использую более новую версию (я думаю) jquery, потому что в меню док-станции Mac-стиль мой клиент спрашивает, меню работает, только функция slideDown Dont остаются открытыми, поэтому в меню не работает ..Синтаксис меню JQuery не работает со старым

Я имел обыкновение использовать этот JQuery ..

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script> 

йота этот код:

<script type="text/javascript"> 
$(document).ready(function(){ 

    $("ul.submenu").parent().append("<span></span>"); 

    $("ul.menu li span").hover(function() { //Al hacer click se ejecuta... 

     //Con este codigo aplicamos el movimiento de arriva y abajo para el submenu 
     $(this).parent().find("ul.submenu").slideDown('fast').show(); //Menu desplegable al hacer click 

     $(this).parent().hover(function() { 
     }, function(){ 
      $(this).parent().find("ul.submenu").slideUp('slow'); //Ocultamos el submenu cuando el raton sale fuera del submenu 
     }); 

     }).hover(function() { 
      $(this).addClass("subhover"); //Agregamos la clase subhover 
     }, function(){ //Cunado sale el cursor, sacamos la clase 
      $(this).removeClass("subhover"); 
    }); 

}); 
</script> 

Этот код остается е, им просто использовать это в моем заголовке сейчас ..

<script src="js/jquery.tools.min.js"></script> 
<script type="text/javascript" src="js/jquery.js"></script> 
<script type="text/javascript" src="js/interface.js"></script> 

вопрос после того, как все Как я могу переписать эти строки на самом деле сделать это меню работает ...

Здесь работает http://www.dreaminmedia.com/imdr/quienessomos.php

Вот HTML

<div id="menuwrap"> 
<ul class="menu"> 
    <li><a href="#">Inicio</a></li> 
    <li> 
     <a href="#">Tutoriales</a> 
     <ul class="submenu"> 
      <li><a href="#">CSS</a></li> 
      <li><a href="#">Javascript</a></li> 
      <li><a href="#">jQuery</a></li> 
      <li><a href="#">HTML</a></li> 
      <li><a href="#">PHP</a></li> 
     </ul> 
    </li> 
    <li> 
     <a href="#">Códigos</a> 
     <ul class="submenu"> 
      <li><a href="#">Reloj en Flash</a></li> 
      <li><a href="#">Fecha con JS</a></li> 
      <li><a href="#">XML y AS</a></li> 
      <li><a href="#">RSS y PHP</a></li> 
      <li><a href="#">ASP a Excel</a></li> 
      <li><a href="#">PHP a Excel</a></li> 
     </ul> 
    </li> 
    <li><a href="#">Sobre Nosotros</a></li> 
    <li><a href="#">Politica</a></li> 

    <li><a href="#">Contactanos</a></li> 
</ul> 
</div> 

ответ

1

Что вам нужно, это событие делегации, если вы используете последнюю версию JQuery:

изменить эту строку:

$("ul.menu li span").hover(function() { //Al hacer click se ejecuta... 

к этому:

$("#menuwrap").on('hover', 'ul.menu li span', function() { //Al hacer click se ejecuta... 

@ Ваш последний комментарий:

$("#menuwrap").on('hover', 'ul.menu li span', function() { 
    $(this).addClass("subhover"); 
}, function() { 
    $(this).removeClass("subhover"); 
}); 

$("#menuwrap ul.menu li").hover(function() { 
    $("> ul.submenu", this).stop().slideDown('fast').show(); 
}, function() { 
    $("> ul.submenu", this).stop().slideUp('slow'); 
}); 
+1

@Monclee вы можете попробовать это обновление один. – Jai

+0

Я полностью заменяю ваш код, вы можете увидеть его здесь http://www.dreaminmedia.com/imdr/quienessomos.php, теперь он совсем не работает. – Monclee

+0

Я просто добавляю HTML на вопрос, который может быть полезен – Monclee

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