2012-01-26 1 views
0

jquery의 $ .getScript 비트가 작동하면 편리하다는 것을 알 수 있습니다.하지만 문제가있는 것은 마지막 것입니다. 문제가 JS 파일을로드하는 방식으로 인해 발생했다고 의심됩니다. 어떻게 작동 시키나요? 내 index.html은 실제로 index.php이며 body 태그 사이에는 거의 차이가 없습니다. 나는 JQuery와 1.7.1

<body id="btLive"> 
    <script> 
      buildInterfaces(); 
    </script> 
</body> 

buildInterfaces()를 사용하고있어 문서의 이름 layoutLoader.js 내부에 존재한다. 이 파일에서, 나는 다음과 같습니다

aaa = "Successful Load." 

내가 클릭하면 내 시험으로

$(document).ready(function() { 
    $('#hToggle').click(function() { 
      aaa = "Not working."; 
      $.getScript('test.js', function() { 
       alert(aaa); 
      }); 
      toggleHoverPanel(); 
    }); 
}); 

, test.js은 다음 layoutLoader.js과 같은 폴더에 있고 포함 버튼 hToggle, toggleHoverPanel이 발생하고 알림이 표시되지 않습니다. aaa = "Not working."후에 경고를하면; 나는 그것이 작동하지 않는다는 것을 말하는 나가 예상하는 경고 발생을 얻는다. 나는 이것을 사용할 필요가있는 많은 아이템을 가지고 있지만, 내 인생에서 나는 그것을 작동시킬 수 없다. 도움?

답변

2

높은 확률의 test.js 파일을 찾을 수 없습니다. 코드에이 부분을 추가하고 다시 시도하십시오.

$(document).ajaxError(function(event, request, settings){ 
    alert('error loading: ' + request.status); 
}); 
+0

Ah ha. 그랬어. 그런 추가 스크립트를로드 할 때처럼 보이는, 내 index.php 파일에 상대 경로를 지정하고 파일이 내 다른 스크립트와 같은 폴더에 있다고 가정하지 않도록해야합니다. –

+0

@Charles Shoults 물론 페이지 나 BASE 태그가 설정되어 있다면 값과 관련이 있습니다. :) – Cheery