Bookmarklet třídy MooTools Sniffer

Nedávno jsem prohlížel několik webových stránek řízených MooTools a jedna z otázek, které jsem si zapsal, byla "Které základní třídy MooTools používáte a kolik tříd jste vytvořili?" Pak jsem se zeptal sám sebe, jestli existuje způsob, jak bych na to přišel sám. Konečným výsledkem je bookmarklet JavaScriptu, který najde všechny třídy MooTools definované v objektu Window.

Bookmarklet MooTools

JavaScript MooTools

(function() { 
if(window.MooTools == undefined) return false;
var classes = [];
for(obj in window) {
	try {
		var typo = (window.$type != undefined ? $type(window[obj]) : typeOf(window[obj]));
		if(typo == 'class') {
			classes.push(obj);
		}
	} catch(e) { }
}
classes.sort();
console.log('# Classes: ' + classes.length);
classes.each(function(klass) {
	console.log(klass);
}); })();

Klíčem k nalezení každé třídy je použití funkcí $type ( Bookmarklet MooTools

Tady to máš. MooTools 1.3 je strukturován trochu jinak než 1.2, takže s 1.3 uvidíte mnohem méně tříd. Je to jen součást minimalizace globálů a zpřísnění tohoto mistrovského rámce!