2010-04-25 3 views

답변

3

가 깰 것인가? .... 어쩌면 :

이 일어날 것이라고 내 머리 위로 떨어져이 정말 일반적인 이유가 있습니다. 그들은 그것이 주된 목적이기 위해 다음 충돌을받을거야 $를 사용하는 다른 라이브러리를 사용하는 경우,이 그러나이 같은 jQuery.noConflict()에 확인할 수 있습니다 :

var $j = jQuery.noConflict(); //give `$` back to whatever had it... 
$j("selector").doSomething(); //use the $j you assigned or jQuery from now on 

는 다른 하나는 이미 jQuery를가로드 될 것이다 (아마도 다른 버전 일 수도 있습니다). 스크립트를로드하기 전에 난 그냥이처럼 jQuery 객체 테스트를 추가합니다 :

if (typeof jQuery == 'undefined') { //load jQuery } 
//jQuery has been loaded, either by your or originally, keep going... 

이미로드에 대한이 솔루션은 jQuery를의 이전 버전이 있다면, 당신은 단지 기능을 가지고 있습니다, 하나주의를 가지고 그 버전의. 페이지에 이전 버전과 새로운 버전을로드하고 별난 행동을 많이하지 않는 방법을 알지 못합니다. 단지 그렇게하도록 설계되지 않았습니다. 또한

, 내가 jQuery를 이미로드되어있는 경우에이 두 작업 차선책을 결합 것이며 이처럼 $입니다 :이 약

if (typeof jQuery == 'undefined') { 
    var used = typeof $ != 'undefined'; 
    //load jQuery 
    if(used) jQuery.noConflict(); 
} 
window.$j = jQuery; 
//always use $j in your script, it'll always be present. 
+0

무엇입니까? $ (문서) .ready (함수() {// 여기에 $ (선택기)와 같은 것들} –

+0

Btw, 좋은 답변 주셔서 감사합니다! :) –

+1

@Martti - 코드를 래핑 할 수 있습니다. $() * /}를 사용하는 다른 물건들 (jQuery) : $() * /}을 사용하는 다른 물건들 ($ function() {/ * document.ready stuff * /}) ; ' –