Я видел код jquery, который содержит метод jQuery.noConflict.Что такое jquery noConflict, зачем нам это нужно?
не знаю цели, не получил, почему нам это нужно.
Я только понимаю, что это что-то связано с плагином jquery.
Я видел код jquery, который содержит метод jQuery.noConflict.Что такое jquery noConflict, зачем нам это нужно?
не знаю цели, не получил, почему нам это нужно.
Я только понимаю, что это что-то связано с плагином jquery.
jQuery (и другие фреймворки, подобные ему) хранят псевдоним объекта jQuery в переменной $
. Это просто для упрощения, когда вы пишете код.
Вы действительно можете написать весь свой код, как этот jQuery('.selector');
, вместо того, чтобы использовать знак доллара, если хотите. Режим без конфликтов позволяет использовать другой код (обычно другой фреймворк), который ТАКЖЕ хранит что-то в переменной знака доллара.
Это особенно полезно при наличии нескольких библиотек javascript, используемых на странице, например, jQuery, прототипе и т. Д. Символ $
является особенным в тех библиотеках, что и в jQuery. По этой причине jQuery.noConflict
.
См:
Using jQuery with Other Libraries (Official Docs)
Update:
После того, как вы использовали jQuery.noConflict
, контроль $
передается другим библиотекам, а не Jquery и в этом случае , вам нужно будет использовать jQuery
, а не $
.
Другая альтернатива, которая оказывается особенно полезным при написании плагинов JQuery это что-то вроде:
(function($){
// your code....
})(jQuery);
В этом случае, хотя, вы можете использовать $
нормально, даже если другие библиотеки включены на странице.
путают. но как они идентифицируют, какой $ это – cache
Когда вы используете noConflict, вы освобождаете псевдоним jQuery со знака доллара. Таким образом, для остальной части кода вы можете использовать этот синтаксис: 'jQuery ('. Whatever');' для jQuery-действий, и вы можете использовать знак доллара для другой структуры. – Stephen
большое спасибо – cache