Verfasst von: bletra | 17. November 2009

JavaScript: Funktionsbibliothek – Namensraum simulieren

In JavaScript sind Funktionen essentiell. Es gibt eine Möglichkeit ähnlich, wie in anderen Programmiersprachen eine Klasse von statischen Funktionen zu definieren. Es ist eben nur keine Klasse, aber ähnlich zu verwenden. Im DOM fehlen mir einige Funktionen, also definiere ich sie und lege sie in einem globalen Array mit Literalen als Schlüssel ab.

var UBTDomHelper = {  
	/* set attribute for given node, if not null or undefined */
	SetNodeAttribute: function (node, attribute, value) { 
		if (node) {
			node.setAttribute(attribute, value);
		}
	},
	/* set nodeValue for given node, if not null or undefined */
	SetNodeValue: function (node, value, separator) { 
		if (node && value != null && (value!='undefined')) {
			this.ClearNode(node);	
			if (separator.length > 0 && value.indexOf(separator) != -1) {
				var lines = value.split(separator);
				for(var i=0; i<lines.length; i++) {
					node.appendChild(document.createTextNode(lines[i]));
					node.appendChild(document.createElement("br"));
				}
			}
			else {
				node.appendChild(document.createTextNode(value));
			}
		}
	},
	/* remove all children of a given node */
	ClearNode: function (node) {
		if (node) {
			while(node.hasChildNodes()) {
				node.removeChild(node.firstChild);
			}
		}
	}
};

Sobald die Datei im HTML eingebunden ist, kann ich an anderer Stelle mit

UBTDomHelper.SetNodeAttribute(node, attribute, value);

darauf zugreifen.

Advertisements

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

Kategorien

%d Bloggern gefällt das: