Ajout de tableau et exécution
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:
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:
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
Citation:
#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