2012-11-01 2 views
2

태그 관리자가 오늘 다운되어 우리 사이트가 허구에 걸리게되었습니다. 태그 관리자의 코드는 업무상 중요하지 않습니다 (분석 등 ...). 다음과 같은 방법이 있습니까?제 3 자 (상호 도메인) Async Dom Injected Script에서 시간 제한을 설정하는 크로스 브라우저 방식이 있습니까?

var extScript = document.createElement('script'); 
extScript.type = 'text/javascript'; 
extScript.src = 'http://third-party.com/scriptfile.js'; 
var s = document.getElementsByTagName('script')[0]; 
s.parentNode.insertBefore(extScript, s); 

window.setTimeout(function() { 
    // if script not loaded - "give up" 
}, 3000); // 3 secs 
+0

당신이 모든 걸에게 처음으로로드 할 다른 시간을 제공하기 위해 몇 초 후 스크립트를 삽입 할 수 있습니다으로 실행할 수 있는가? –

+0

물론 시간 제한을 설정하고 "포기"할 수 있습니다. 그러나 포기에 당신은 무엇을하고 싶습니까? – Bergi

+1

브라우저를 멈추게하는 방법을 찾고 있다고 생각합니다. 결과적으로, 나는 또한 이것을 할 수있는 방법을 찾고 있지만, 많이 내놓지 않았다. – JavaKungFu

답변

1

미션 크리티컬이 아닌 경우 문서가 완전히로드되면 바로이 스크립트를 body 태그의 끝에 배치 할 수 있습니다.

window.onload = function() { 
    var extScript = document.createElement('script'); 
    extScript.type = 'text/javascript'; 
    extScript.src = 'http://third-party.com/scriptfile.js'; 

    document.body.appendChild(extScript); 

} 
0

async 속성을 추가하는 것은 어떻습니까?

이 차단하지 않습니다
<script async type = 'text/javascript' src = 'http://third-party.com/scriptfile.js' ></script> 

는, 그러나 당신은 몇 가지 문제 (like this one)