Nell'utilizzo del metodo apply() ho riscontrato un'altra anomalia su IE:
non è possibile definire variabili globali se esistono degli elementi con l'ID uguale al nome della variabile, perché IE ammette l'accesso agli elementi via ID non solo attraverso il metodo DOM-standard getElementById(), ma anche con window.elementID
E' un vero stress perché non solo il metodo è difforme dagli standard, ma perché prevale anche sulla scrittura delle variabili dall'interno di metodi come apply/call.
Esempio:
Chiaramente su FF tutto come ci si aspetta, su IE invece no...Codice PHP:<div id="c">div "c"</div>
<script type="text/javascript">
function oClass(fn) {
this.fn = fn;
this.pass = function() {
this.fn.apply(window, []);
};
}
var obj = new oClass(function() {
c = "Sono globale!";
});
alert("window.c = " + window.c);
obj.pass();
alert("c = " + c);
</script>
Era noto questo limite di apply/call su IE?
Se sì, ci sono dei workaround che potete segnalare?

 
			
			 
					
					
					
						 Rispondi quotando
  Rispondi quotando
 
 

 
  
			
 ( dovrebbe uscire questo autunno in U.S.A.
 ( dovrebbe uscire questo autunno in U.S.A.  )
 )
						 
 