2011-11-09 3 views
0

jquery 라이브러리에 대한 참조를 추가하는 html 페이지가 있습니다. 그런 다음 jquery 라이브러리를 다시로드하는 대화 상자 창이 있습니다.'찾을 수 없습니다'function error

이 시점에서 다른 jquery 플러그인 # 2를 호출하는 jquery 플러그인 # 1이 있는데 jquery pluging 2와 같은 오류가 발생합니다.

첫 번째 jquery 라이브러리에 대한 참조를 제거하면 작동하는 것처럼 보입니다. 왜 jquery (대화 상자)에 대한 두 번째 참조를 추가하면이 문제가 발생합니까? 어떻게 해결할 수 있습니까?

내 플러그인 내가 그것을 jQuery 라이브러리에 여러 참조에 문제가있는 대화 상자에서 플러그인을 사용하는 경우

(function ($) { 

    $.fn.finder = function (optionsIn) { 
       //do stuff 
       .. 
       //2nd call to plugin this is where i get the error 
       $(this).watermark('watermark'); 

    }; 
})(jQuery); 

플러그인은 그러나 간단한 HTML 페이지에 잘 작동 (외부 파일에 다음과 같이 정의되어있다) .

아이디어가 있으십니까?

I는 입력 $('input').watermark('Enter your name.','my-custom-class');

+0

'워터 마크'정의를 보여줍니다. 또한, $ .fn.func_name' 함수 안에서'this'는 jQuery 객체입니다. 따라서 다른 jQuery 객체로 포장하지 마십시오. –

+0

예, 대화 상자에서 플러그인을 사용하지 않을 때 $ (this)를 사용하는 것이 좋을 것 같습니다 (대화 상자 구현을 기억하십시오. 기본 jquery 라이브러리를 참조하고 대화 상자에서도이를 참조합니다). jquery에 대한 참조가 인 이유는 무엇입니까? – David

+1

'finder'를 포함하는 자신의 외부 스크립트 파일을 포함시키기 전에 워터 마크 플러그인을 포함시켜야합니다. –

답변

0

감사와 같은 일반적인 사용에 워터 마크 플러그인 https://github.com/fabrikagency/fa-watermark을 사용하고 있습니다. 그것은 내가로드되는 아이템의 순서를 매우주의 깊게 보게했습니다. 문제는 내 플러그인이 jquery 전에로드되는 것입니다. 또한 $ (documente) .ready (function() { }) 내에 $ ('inputelement'). pluginOne ('')을 넣으면 왜 이렇게 대답할까요? 그 때 그것은 잘 일했다. 이 작업은 모든 것이로드 될 때까지 플러그인을 연결하려고 시도하지 않았습니다.

관련 문제