selecteur $(elt) et className
En testant un probleme de selection je me suis heurté a un probleme avec l'utilisation de className
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 36 37 38 39 40 41 42 43 44
| <html>
<head>
<title>Test commutation</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="generator" content="PHPedit 3.4">
<style type="text/css">
.hidden { display:none; }
.visible { display:block; }
</style>
<script type="text/javascript" src="../Commons/Library/jquery-1.3.2.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#explorer').bind('click', null, toggle);
});
function toggle(event) {
var element = event.target;
var name = element.tagName;
alert(element.id);
// var display = $('#enfant').css("display");
var display = $('#enfant').className;
alert(display);
if ('LI' == name) {
// $('#enfant').css("display", "block");
$('#enfant').className = "visible";
}
}
</script>
</head>
<body>
<div id="explorer">
<ul>
<li id='parent'>
id = parent
</li>
<div id='enfant' class='hidden'>
<li>id = element enfant</li>
</div>;
</ul>;
</div>
</body>
</html> |
Tel que ce petit test est ecrit il me semblait que les deux syntaxes pour rendre visible l'élement enfant (en cliquant sur le point de liste) devait e^tre équivalentes (une communication vues quelque part indiquant même pour la plupart des navigateurs une execution plus rapide avec classname).
En fait mes syntaxes avec className ne marchent pas !
Sauriez-vous pourquoi ?
Probleme de syntaxe ????
La question portait sur l'echec de mon utilisation de className
J'ai bien pris note de vos réponses et je vous en remercie. Vos suggestions mes seront très utiles.
En fait je suis parti d'un code qui est ecrit avec <Prototype>. Je voulais le retranscrire avec le moins de fatigue possible (à mon âge, on s'économise !) mais avec jQuery.
Mais ce qui me semblait devoir m'occuper quelques minutes s'est enlisé sans que j'arrive à comprendre exactement où !
Ma structure de test ne prétend pas être un modele du genremais c'est le déshabillage progressif jusqu'à l'extrême de la structure de départ arrêtée au moment où j'ai pu mettre en évidence une question simple
La question élémentaire (i.e. simplifiée autant que possible) est donc simplement de savoir si ma syntaxe avec className est incorrecte dans ce contexte.