2012-10-21 38 views
4

我正在使用HTML5 Canvas和Javascript構建遊戲,並且我正在使用JSON格式化的貼圖貼圖來創建自己的關卡。這些圖塊在FireFox中正確呈現,但是當我使用Chrome時,JSON抓取會失敗,並且「訪問控制 - 允許原點不允許使用原點null」。我使用的是jQuery的$ .ajax命令,我的所有文件都在一個目錄中。如何在沒有AJAX的情況下在本地抓取JSON

我會使用this後的解決方案,但我不能使用Web服務器解決方案。

是否有任何其他方式來獲取JSON文件進行解析和讀取?類似於通過提供URL來加載圖像的東西?或者有什麼方法可以將我的JSON文件快速轉換爲全局可用的字符串,以便我可以使用JSON.parse()解析它?

+3

fetch?不要使用複雜的名稱。 var jsonObject = [... <您的json對象> ..] 將其用作變量或將其存儲在js文件中幷包含它們。你可以直接使用這個變量! – madhairsilence

回答

1

爲什麼本地Web服務器不是一種選擇? Apache是​​免費的,可以安裝在任何東西上,並且易於使用,IMO。此外,Chrome瀏覽器而言,考慮--allow-file-access-from-files

但如果沒有別的工作,也許你可以只添加鏈接到文件script標籤,然後追加var SomeGlobalObject = ...每個文件的頂部。您甚至可以通過使用JS將腳本標籤附加到head來動態執行此操作。但最終,您可以使用AJAX代替JSON.parse(SomeGlobalObject)

換句話說,通過添加腳本標記將文件加載到全局名稱空間中。通常這會被認爲是不好的做法,但只用於測試,在沒有任何其他選項的情況下,它可能會起作用。

相關問題