Sizzle a Peppy Selector Engines v MooTools

Před několika týdny jsem se dotkl toho, jak byste mohli implementovat selektorové motory Peppy a Sizzle v MooTools. Oba příspěvky ukázaly, jak odstranit výchozí motor Moo z používání a místo toho učinit každý příslušný selektor jediným. Nemusí to tak být. Můžete také použít všechny tři motory na stránce.

Peppy, Sizzle a Moo společně

//assuming that the JavaScript files we brought in via simple XHTML above...

/* MooTools */
var divs = $$('div');

/* Sizzle */
Window.$Sizzle = function(selector){
	return new Elements(new Sizzle(selector));
}
//sizzle usage
var divs = $Sizzle('div');

/* Peppy */
Window.$Peppy = function(selector){
	return new Elements(new peppy.query(selector));
}
//Peppy usage
var divs = $Peppy('div');

proč to dělat? Každý motor má své výhody. Sizzle si obecně vede lépe s Internet Explorerem, takže pokud zjistíte, že uživatel používá IE, můžete místo toho použít Sizzle k zachycení prvků.

Ve většině případů je tato strategie přehnaná kvůli režii přivedení každého motoru. Rozhodně je to však možnost.