2012-01-17 4 views
1

플러그인에서 변수를 액세스하고 문서에서 준비하려면 어떻게해야합니까? 나는 stackoverflow에 관한 몇 가지 관련 질문을 찾았지만 어떻게 할 수 있는지 이해하지 못했다.JQuery 플러그인에서 변수 액세스

감사합니다.

(function($){ 
    $.fn.myPlugin = function(){ 
     var myVar1 = true; 
     var myVar2 = true; 
     var myVar3 = true; 

     .... 

     if(myVar1 == true){ 
     // do something 
     ... 
     } 

     .... 
    } 
})(jQuery); 

<script type="text/javascript"> 
    $(document).ready(function() { 
     $.fn.myPlugin.myVar1 = false; 
    }); 
</script> 
+0

: 당신의 변수는

Btw은이 플러그인 외부 변수를 호출해야하는 경우

는 방법입니다 ... 참 또는이 두 가지 기능을 수행합니다 false로 설정됩니다 이게 왜 느껴지는거야? 좋은 아이디어? 이런 방식으로 플러그인을 파고 드는 것은 바람직한 효과를 내지는 않을 것입니다. 일반적으로 당신이 염두에두고있는 것을 할 수있는 옵션과 콜백이 있습니다. 여기서 컨텍스트는 무엇입니까? – Sinetheta

+0

@Sinetheta 나는 그가 자신의 플러그인을 의미한다고 생각한다 – Darcy

+0

@Sinetheta jquery 매뉴얼에 따라 기본값과 옵션을 사용하려면 모든 코드를 다시 작성해야하고 어디서부터 시작해야할지 모르겠다. 나는 완전한 초보자이다. 저는 변수에 접근하고 그 값을 변경하는 것이 매우 간단한 일이라고 생각했습니다. 거의 모든 대답은 제가하고있는 일을 알고 있다고 가정합니다. 그럴 경우 여기에 없을 것입니다 ... – user1002039

답변

3

사용 this 대신 var :

this.myVar1 = true; 
this.myVar2 = true; 

.... 
+0

if if 문에서 어떻게 참조 할 수 있습니까? 그냥 property 또는 this.propertyName을 호출하면됩니까? 두 가지 방법을 시도했지만 작동하지 않았습니다. 고맙습니다. – user1002039

+0

@ user1002039 이렇게 할 수 있어야합니다 :'if (this.myVar1) {...}' – Darcy

1

가 왜 플러그인 외부에서 호출 할 필요가? 당신은 별도의 파일에 플러그인을 사용하면 true 또는 다른 기능을 구축 false의 경우보다 , 부울 옵션으로 귀하의 변수를 넣어 ... 당신은 쓸 것이다 :

$(document).ready(function() { 
     $('#id').myPlugin() { 
     //options 
     } 
    }); 

을 이런 방식으로 옵션의 경우 나는 더 나은 질문을 생각

$('#id').data('myPlugin').option.foo; 
+1

이것은 실제로 함수에 대한 jquery 문서에서 권장하는 방법 중 하나입니다. – MrBoJangles

+0

해당 변수가 기본값으로 설정됩니다. 나는 플러그인을 사용할 때 관련 기능을 켜거나 끌 수 있어야한다. – user1002039

+0

@ user1002039 내 편집을보세요. 변수를 옵션 또는 설정에 저장하고 (plugin.settings = {// your vars}) 원하는 곳으로 가져올 수 있습니다. –

관련 문제