Appel a l'aide: Script d'arborescence ne fonctionnant que sur Internet Explorer
Ci-dessous mon script.
Il ne fonctionne que sur Internet Explorer a cause de document.all et de sourceIndex a priori ...
Est-ce qu'une bonne ame pourrait m'aider a le rendre portable car je ne connais pas du tout Javascript ?
Merci d'avance de votre aide,
Cyril.
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 45 46 47 48 49 50 51 52 53 54 55 56
| <html>
<head>
<style>
#foldheader{cursor:hand}
</style>
<script language="JavaScript1.2">
var head="display:''";
function getElementsById(theId){
var __idArray = new Array();
var __allArray = document.getElementsByTagName('li');
for(var i=0;i<__allArray.length;i++){
if(__allArray[i].id==theId){
__idArray[__idArray.length] = __allArray[i];
}
}
return __idArray;
}
function change(){
if(!document.all)
return;
if (event.srcElement.id=="foldheader") {
var srcIndex = event.srcElement.sourceIndex;
var nested = document.all[srcIndex+1];
var foldinglists = getElementsById("foldheader");
var nombre = foldinglists.length;
for (var i=0 ; i<nombre ;i++) {
var srcIndex2 = foldinglists[i].sourceIndex;
if (srcIndex != srcIndex2) {
document.all[srcIndex2+1].style.display="none";
}
}
if (nested.style.display=="none") {
nested.style.display='';
}
else {
nested.style.display="none";
}
}
}
document.onclick=change;
</script>
</head>
<body>
<b><font face='' style='font-size:' color=''>
<li id="foldheader">Menu</li></font></b>
<ul id="foldinglist" style="display:none" style=&{head};>
<li>Ouverture menu</li>
<li>Ouverture menu2</li>
</ul>
</body>
</html> |