Ответ 1
В сборке jQuery нет необходимости включать Sizzle. Его можно удалить... код jQuery все ссылки Sizzle.
, вы можете просто захватить/скомпилировать jQuery самостоятельно (включая Sizzle заранее) и он подвергается любой другой библиотеке (фактически не включает ее в скомпилированную версию, так же как extern для компилятора закрытия).
Здесь вы можете оставить его встроенным, но выставить Sizzle для внешнего использования:
Если вы знаете, что jQuery будет использоваться (зависимость), просто добавьте это после jQuery:
window.Sizzle = jQuery.find;
Это приведет к повторному раскрытию Sizzle в качестве свойства, которое вы можете использовать.
Здесь приведена ручная версия для удаления Sizzle:
В jQuery (версия 1.4.3 ссылка) вы увидите следующее:
/*!
* Sizzle CSS Selector Engine - v1.0
* Copyright 2009, The Dojo Foundation
* Released under the MIT, BSD, and GPL Licenses.
* More information: http://sizzlejs.com/
*/
(function(){
//...
//lots of code!
//...
// EXPOSE
jQuery.find = Sizzle;
jQuery.expr = Sizzle.selectors;
jQuery.expr[":"] = jQuery.expr.filters;
jQuery.unique = Sizzle.uniqueSort;
jQuery.text = Sizzle.getText;
jQuery.isXMLDoc = Sizzle.isXML;
jQuery.contains = Sizzle.contains;
})();
Заменить этот раздел только:
(function(){
// EXPOSE
jQuery.find = Sizzle;
jQuery.expr = Sizzle.selectors;
jQuery.expr[":"] = jQuery.expr.filters;
jQuery.unique = Sizzle.uniqueSort;
jQuery.text = Sizzle.getText;
jQuery.isXMLDoc = Sizzle.isXML;
jQuery.contains = Sizzle.contains;
})();
Затем все, что вам нужно сделать, включите Sizzle перед jQuery, и он будет работать нормально.
Здесь скрипка, показывающая, что он работает, включая Sizzle непосредственно из github, а не встроенный в jQuery.