2012-03-22 29 views
0

我有一個應用程序,它會返回JSON-P的數據,我已經與它使用jQuery的簡單的getJSON方法是溝通:沒有jQuery的情況下獲取JSON-P數據的最佳方式是什麼?

$.getJSON("http://somedomain.com/&callback=?", this.callback); 

我捆綁我的代碼成一個圖書館,我喜歡不要求jQuery的。重寫getJSON函數以便我可以獲得跨域JSON-P數據是多麼容易?

回答

0

可以這樣做

<script> 
function mycallback(data) { 
    //do something funky with 'data' 
} 

var oHead = document.getElementsByTagName('HEAD').item(0); 
var oScript= document.createElement("script"); 
oScript.type = "text/javascript"; 
oScript.src="http://somedomain.com/&callback=mycallback"; 
oHead.appendChild(oScript); 
</script> 
+0

我是否需要擔心養陰「過時」的劇本我每次調用這個時間標籤?我會每秒多次打電話給他。 – 2012-03-22 16:06:45

+0

不是。沒有。雖然要安排回調具有獨特的名稱。否則,如果快速連續發起請求,回調可能很容易跨越。這就是爲什麼jQuery通常處理創建回調 - 所以它可以做管理名稱。 – barryhunter 2012-03-22 16:09:09

+0

我也意識到我可以添加類似setTimeout(function(){oHead.removeChild(oScript);},1000);到你的代碼的末尾。 – 2012-03-22 16:11:28

相關問題