peterS.: das JavaScript »module pattern«

Beitrag lesen

gruss Olli,

function fooBar() {
  var foo = document.getElementById('bar');
  foo.setAttribute...
  foo...
  foo...
}

Wenn das Element document.getElementById('bar') nun in vielen Funktionen
verwendet wird, ist es dann auch sinnvoll dieses Element in eine globale
Variable abzuspeichern und dann aus den Funktionen auf diese zuzugreifen?

es gehoert mittlerweile zum guten stil, den globalen namensraum nicht
zu verschmutzen.

anwendungen sollten daher auf das u.a von YAHOO detailiert beschriebene
JavaScript "module pattern" aufbauen.

beispielcode:

(function () { // "anonymer namensraum"  
  
	var elmBar;  
  
	var fooBar = (function () {/*  
  
		elmBar.setAttribute ...  
		elmBar. ...  
		elmBar. ...*/  
	});  
  
	var initialize = (function () {  
  
		elmBar = document.getElementById("bar");  
	});/*  
  
	wenn moeglich auf DOM-ready mit der bibliothek Deiner wahl - pseudocode:  
*/  
	$(document).ready(initialize);  
  
})();

so long - peterS. - pseliger@gmx.net

--
»Because objects in JavaScript are so flexible, you will want to think differently about class hierarchies.
Deep hierarchies are inappropriate. Shallow hierarchies are efficient and expressive.« - Douglas Crockford
ie:( fl:) br:> va:( ls:& fo:) rl:) n3;} n4:} ss:} de:µ js:} mo:? zu:]