Мы переключаемся от MooTools до jQuery на работе. У меня есть коллега, который сказал мне никогда не использовать $
как префикс при использовании метода jQuery (если я понял его правильно). Он сказал, что вместо этого, более соответствующий или более безопасный путь (я действительно не следовал за ним) состоял в том, чтобы использовать jQuery.
.
Таким образом вместо $.plugin()
, jQuery.plugin()
должен использоваться, например.
Почему это имело бы место? С чем различие - он делающий $
/jQuery
? Я должен забыть о знаке доллара как мое средство доступа? Только при определенных обстоятельствах?
Почему это так? Верно ли его различие между $ / jQuery?
Потому что почти каждая библиотека JavaScript определяет функцию с именем $. Когда у вас много библиотек в одном документе, могут возникнуть конфликты. Если вы уверены, что jQuery есть и всегда будет единственным скриптом, определяющим эту функцию, я бы не возражал против использования $.
jQuery определяет хорошее решение для разрешения конфликтов: jQuery.noConflict .Используя эту функцию, вы можете определить свое собственное имя, при котором будет доступен jQuery, например
var $jq = jQuery.noConflict(true);
Вызов этой функции приведет к восстановлению предыдущих значений для переменных $ и jQuery, которые существовали до инициализации jQuery. Я не помню, пытались ли другие библиотеки разрешать конфликты имен.
Если вы хотите использовать $ вместо jQuery все время, вы можете запускать свой код в отдельной частной области видимости, которая содержит определение $, используя самозапускающуюся функцию.
(function($){
// your code goes here
$("body").append("<p>Hello World!</p>");
})(jQuery); // or even jQuery.noConflict()
Это для того, чтобы избежать конфликта с другими библиотеками, такими как Prototype, использующими тот же самый $.
Я предпочитаю $, и нет никаких проблем с его использованием, если вы используете только Jquery.
$ имеет псевдоним jquery и теоретически может быть псевдонимом чего-то еще в другой включенной библиотеке или скрипте, что может привести к путанице или к худшему. Если вы используете только jquery, использование $ должно быть нормальным.