2013-06-13 1 views
0

В очень большом проекте у нас есть несколько js-файлов с $( и jQuery(, которые используются в качестве префиксов. Мы не можем исправить эти файлы, потому что они также используются в других проектах.

Итак, есть ли возможность заставить jQuery отвечать на оба префикса?

Спасибо!

ответ

3

По умолчанию jQuery использует как$, так и jQuery для ссылки на его функцию. Это только если вы используете noConflict (или загрузите другую библиотеку), которая изменится.

Но если вы просто загрузку JQuery и ничего, чтобы изменить это не делает, это утверждение будет true:

console.log($ === jQuery); // "true" 

FWIW, если по какой-то причине вам нужно освободить $ символ в ваш проект, файлы вы начиная с:

$(function() { 

может быть изменен следующим образом:

jQuery(function($) { 

... и весь код в пределах функции ready выше может продолжить использовать $, который теняет глобальный. jQuery передает ссылку на свою функцию в обработчики ready.

+0

Идеальный ответ и быстро, я соглашусь, как только SO позволит мне :) –

+0

@RaphaelJeger его странно, что у вас не было теста перед тем, как отправить свой вопрос –

+0

да, вы правы @roasted, мы отправили без думаю об этом. Благодарим вас за вклад –