Bonjour à tous,
J'ai besoin de vos lumières pour comprendre un problème.
J'ai adapter un menu acordéon avec jQuery.

Mon code js est le suivant :
Code JS : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 
// JavaScript Document
 
$(document).ready( function () { 
 
    // On cache les sous-menus : 
    //$(".navigation ul.subNavigation").hide(); 
	// sauf celui qui porte la classe "open_at_load" : 
    $("ul.objectName ul.objectDescription:not('.open')").hide(); 
 
	// et on remplace l'élément span qu'ils contiennent par un lien : 
/*    
	$(".navigation li.level1 span").each( function () { 
       // On stocke le contenu du span : 
        var TexteSpan = $(this).text(); 
        $(this).replaceWith('<a href="#" title="Afficher le sous-menu">' + TexteSpan + '<\/a>') ; 
    } ) ; 
	// On modifie l'évènement "click" sur les liens dans les items de liste 
    // qui portent la classe "toggleSubMenu" : 
  
*/  
  $("ul.objectName li.level1 > a").click( function () { 
        // Si le sous-menu était déjà ouvert, on le referme : 
        if ($(this).next("ul.objectName ul.objectDescription:visible").length != 0) { 
            $(this).next("ul.objectName ul.objectDescription").slideUp("normal", function () { $(this).parent().removeClass("open");$(this).parent().addClass("close") }); 
        } 
        // Si le sous-menu est caché, on ferme les autres et on l'affiche : 
        else { 
            $("ul.objectName ul.objectDescription").slideUp("normal", function () { $(this).parent().removeClass("open");$(this).parent().addClass("close") }); 
            $(this).next("ul.objectName ul.objectDescription").slideDown("normal", function () { $(this).parent().removeClass("close");$(this).parent().addClass("open") }); 
        } 
        // On empêche le navigateur de suivre le lien : 
        return false; 
    });
} ) ;

et mon de html / PHP est le suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
<?php
echo '<ul class="objectName"><li class="level1">';
echo '<a href="#">tt</a>';
 
echo '<table><tr><td>hh</td></tr></table>';
 
echo '<ul class="objectDescription close"><li>';
echo '<div>test</div>';
echo '</li></ul></li></ul>';
?>
Ce que je ne comprends pas pourqoi ca fonction quand je commente cette ligne
#echo '<table><tr><td>hh</td></tr></table>';
Si je la décommentre, le <ul class="objectDescription close"> ne se développe pas alors qu'il se développe normalement quand la ligne, ci-dessus , est commentée!!!

Avez vous une idée pourquoi le table a une infuance?
Ne serait-il pas un problème de DOM?

Merci