이것은 알려진 문제이며 여기에 몇 번이나 물어 보았습니다. 그렇지만 나는 jQTouch에 특정한 것을 보지 않았습니다. 그래서 나는 그것을 시도 할 것이라고 생각했습니다.동적으로로드 된 <script> 태그가 WebKit 브라우저에서 사용되지 않습니다
jQT는 링크를 클릭 할 때 페이지를 동적으로로드합니다. 이 페이지에서 나는
<script>
$.include('javascriptfile.js', function() {alert('do something with results of this file to an already existing div element');};
</script>
은 $ .include 내가 모방이 몇 가지 더 영리와는 $ .load가 추가 것을 발견 jQuery 플러그인입니다 같은 것을 포함 할 것이다. FF로 작동하지만 Chrome이나 Safari에서는 작동하지 않습니다.
경고가 표시되지 않습니다. FireBug는 심지어로드되는 자바 스크립트를 보여주지 않습니다. $ .include 앞에 경고를두면 여전히 아무 것도 볼 수 없습니다.
나는 머리 태그에 포함 된이 코드를 실행하는 onclick/ontap 이벤트를 시도했지만 행운이 없습니다.
편집 : jQT의 r148 버전을 사용하고 있습니다. 이 버전으로 이전하기 전에이 작업이 진행 중이었습니다.
정적 방법 :
<script type="text/javascript">
function staticLoadScript(url){
document.write('<script src="', url, '" type="text/JavaScript"><\/script>');
}
staticLoadScript("javascriptfile.js");
modifyDivFn(processFnInFile());
</script>
동적 방법 :
<script type="text/javascript">
function dhtmlLoadScript(url){
var e = document.createElement("script");
e.src = url;
e.type="text/javascript";
document.getElementsByTagName("head")[0].appendChild(e);
}
onload = function(){
dhtmlLoadScript("javascriptfile.js");
modifyDivFn(processFnInFile());
}
</script>
(가) 포함 후에 당신이 호출 할 수 있습니다
플러그인은 어디에 있습니까? 동적으로로드 된 스크립트는 올바르게로드 된 경우 확실히 작동합니다. – Pointy
포함하는 데 사용되는 플러그인은 jquery.includeMany-1.2.2.js입니다.이 플러그인은 http://www.arashkarimzadeh.com/index.php/jquery/17-includemany-jquery-include-many.html에 있습니다. 나는 최근 편집에서 r148을 사용하고 있으며 r108에서이 점을 기억하고 있습니다. –