Несколько версий jQuery на одной странице плохо. Прекратите взламывать и обновите jQuery или используйте более старую версию.
Что касается безопасности $
, попробуйте
(function($) {
// requirejs inclusion block for loading
}(jQuery.noConflict(true));
Если вы передадите true
в .noConflict
, он заменит старую переменную jQuery
и не уничтожит ее глобально.
Это означает, что вы можете спокойно передать его. Скажем, у вас есть
<script src="jquery-1.2">
<script src="jquery-1.5">
Затем, используя вышеуказанный код, вы вернете 1.2 $
& jQuery
обратно в глобальное пространство и получите 1,5 jQuery в качестве локального $
в вашем закрытии
Снова я советую ПРОТИВ использовать несколько версий, потому что это беспорядок и кошмар обслуживания.
Если вы используете 1.5, вы также можете использовать .sub
, чтобы позволить вам расширить jQuery
локально, не повреждая глобальное jQuery