2012-06-19 2 views
1

왜 global_functions.js에서 만든 함수를 찾을 global.js 수 없습니다다른 스크립트에서 함수를 호출합니까?

<script type="text/javascript" src="http://localhost/ci/js/global_functions.js"></script> 
<script type="text/javascript" src="http://localhost/ci/js/global.js"></script> 

문제; 지금은 가능성이 가장 높은 이유가 아닌 전역 범위에서 함수를 정의하는 것입니다 그 함수의 사용을 window.helper = { func: function() {} }

코드

$(document).ready(function() { 
    function id(input_id) { 
     return document.getElementById(input_id); //global_functions.js 
    } 
} 

$(document).ready(function() { 
    $(id('home_login')).css('display', 'none'); //global.js 
} 
+1

는 함수가 무엇을 생각 즉 전역 범위 –

답변

6

에 액세스 할 경우에만 수 있어요. 비록 당신이 우리에게 코드를 보여주지 않았기 때문에 확실하게 말하기는 어렵습니다.


업데이트는 이제 코드가 추가되었습니다

무슨 일이 일어나고 있는지입니다

.

function() {     // This is a function 
    function id(input_id) { // So this function is scoped to it 
     return document.getElementById(input_id); 
    } 
} 
+0

에 정의되지 수 있지만 (ㄱ'document.ready에서 모두) '기능과 나는 그들이 모두 같은에서 발사하는 인상이었다 시각. – Phil

+0

순차적으로 실행되지만 문제는 범위 * * 타이밍 * 중 하나입니다. 'ready()'에 전달되는 익명의 함수 안에서 함수가 정의된다면 그 함수는 익명 함수의 범위 내에서만 사용 가능합니다. – Quentin

+0

** 문서 ** 내부에서 ** 기능을 선언했음을 의미합니까? '$ (document) .ready (function() {/ * 여기서 함수 x를 선언하십시오 * /}); 또는 당신이 문서 안의 함수를'$ (document) .ready (function() {/ * call function x here * /})'라고 불렀다는 것을 의미합니까? –

관련 문제