J'ai une liste qui permet de basculer sans problème dans FF. J'ai besoin de cet IE pour qu'il soit prêt pour la production.Bascule UL fonctionnant en FF et non en IE 7
Il semble (IE) d'appliquer le js au premier #orderItem et le premier #familiy seulement. Le reste des éléments de la liste est ignoré.
Toute aide serait géniale.
Un morceau de HTML (grande liste):
<div class="classificationContainer">
<ul class="classification" id="orderUL">
<li id="orderItem" class="ordrheading">
<div class="order">
<a href="?nav=search_recherche&lang=en">
<img src="http://dev.ncr.ec.gc.ca/publications/bba-aob/images/node_closedc.gif" alt="By Classification" id="OrdListImage" />
Apodiformes (Swifts and Hummingbirds)
</a>
</div>
<ul class="classification" id="FamilyList">
<li id="familiy">
<div class="family">
<a href="?nav=search_recherche&lang=en">
<img src="http://dev.ncr.ec.gc.ca/publications/bba-aob/images/node_closedc.gif" alt="Family" id="FamListImage" />
Apodidae (Swifts)
</a>
</div>
<ul class="classification" id="SpiecesList">
<li>
<img src="http://dev.ncr.ec.gc.ca/publications/bba-aob/images/node_leafc.gif" alt="Species" />
<a href="?lang=en&nav=bird_oiseaux&aou=423"> Chimney Swift (Chaetura pelagica) </a>
</li>
</ul>
</li>
<li id="familiy">
<div class="family">
<a href="?nav=search_recherche&lang=en">
<img src="http://dev.ncr.ec.gc.ca/publications/bba-aob/images/node_closedc.gif" alt="Family" id="FamListImage" />
Trochilidae (Hummingbirds)
</a>
</div>
<ul class="classification" id="SpiecesList">
<li>
<img src="http://dev.ncr.ec.gc.ca/publications/bba-aob/images/node_leafc.gif" alt="Species" />
<a href="?lang=en&nav=bird_oiseaux&aou=428"> Ruby throated Hummingbird (Archilochus colubris) </a>
</li>
<li>
<img src="http://dev.ncr.ec.gc.ca/publications/bba-aob/images/node_leafc.gif" alt="Species" />
<a href="?lang=en&nav=bird_oiseaux&aou=433"> Rufous Hummingbird (Selasphorus rufus) </a>
</li>
</ul>
</li>
</ul>
</li></ul></div>
Je les fonctions jquery suivantes:
<script type="text/javascript">
$(document).ready(function() {
// toggle action for the order to familiy
$("li#orderItem").click(function (event) {
// toggle the image
var src = ($("#OrdListImage", this).attr("src") == "/images/node_closedc.gif")
? "/images/node_openc.gif"
: "/images/node_closedc.gif";
$("img#OrdListImage", this).attr("src", src);
//toggle the ul
$('ul#FamilyList', this).toggle($('ul#FamilyList', this).css('display') == 'none');
// stop all link actions
return false;
});
//toggle action from familiy to speices
$("li#familiy").click(function() {
// toggle the image
var src = ($("#FamListImage", this).attr("src") == "/images/node_closedc.gif")
? "/images/node_openc.gif"
: "/images/node_closedc.gif";
$("img#FamListImage", this).attr("src", src);
//toggle the ul
$('ul#SpiecesList', this).toggle($('ul#SpiecesList', this).css('display') == 'none');
// stop all link actions
return false;
});
});
C'était tout. J'ai changé la jquery à la suivante: $ ("li [id * = 'orderItem']") $ ("li [id * = 'famille']") De cette façon, il a trouvé tous les identifiants. J'utilise des répéteurs imbriqués pour générer la liste. Donc les identifiants ne finissent pas toujours uniques. – Arnej65
Le but de "id" est d'être unique. Si votre code HTML contient plus d'un "id" de la même valeur - utilisez "class". Eh bien, si vous souhaitez que votre code html soit valide w3c :) – egis
J'ai changé la référence aux classes des éléments à la place. – Arnej65