Penso che questo possa tornare utile:
preso da http://www.quirksmode.org/js/dhtmloptions.html
Questo per avere un riferimento ai layer in maniera crossbrowser (funziona da NS 4 a IE6)codice:function getObj(name) { if (document.getElementById) { this.obj = document.getElementById(name); this.style = document.getElementById(name).style; } else if (document.all) { this.obj = document.all[name]; this.style = document.all[name].style; } else if (document.layers) { this.obj = getObjNN4(document,name); this.style = this.obj; } } function getObjNN4(obj,name) { var x = obj.layers; var foundLayer; for (var i=0;i<x.length;i++) { if (x[i].id == name) foundLayer = x[i]; else if (x[i].layers.length) var tmp = getObjNN4(x[i],name); if (tmp) foundLayer = tmp; } return foundLayer; }
salvate il codice Js in un file DHTMLApi.js ed ogni volta che dovete lavorare con i layer non dovete far altro che includere lo script
<script language="javascript" src="DHTML.js"></script>
Dopo aver incluso lo script il layer è chiamato in questo modo:
L'oggetto poi diventa un container dei 2 oggetti:codice:var x = new getObj('NomeLayer');
.obj che contiene tutte le proprietà dell'oggetto al di fuori degli styles
style contiene tutte le proprieta css dell'oggettocodice:alert(x.obj.id) // dara' l'id del layer per esempio
.....etc etc per tutte le proprieta'codice:x.style.top = '20px'; x.style.left = '20px'; x.style.visibility = 'visible'; x.style.overflow = 'hidden'; x.style.color = '#FF00CC'; x.style.fontStyle = 'Italic'; //non funzia su IE 4 su MAC x.style.fontFamily = 'Arial'; //non funzia su IE 4 su MAC

Rispondi quotando