2012-12-10 73 views
0

我試圖加載自己的文件到我的.js文件,但我似乎無法找到解釋它足夠好的任何代碼。目前我有一些代碼將使用webGL繪製一個平面三角形。現在我想加載一個模型格式(3DS,LAY,VW,OBJ等等),但我找不到任何代碼來加載一個簡單的文件並將其存儲在一個變量中,現在使用這個javaScript文件當然還有一個html文件,但是這個html文件不會隨意上傳給用戶使用,所以不需要談論整個安全文件的加載,我想要做的就是將一個本地文件加載到一個變量中無論如何,文件名也將在javaScript文件中指定。使用JavaScript加載文件

,只需從OBJ文件一些簡單的文字

... 
v -0.3393 0.0000 -12.3639 
v 1.8409 3.7515 -8.3253 
v 2.8119 0.0000 -11.9490 
v -0.3393 3.7515 -8.6123 
v 0.8700 -0.0000 -4.7016 
v -0.3393 -0.0000 -4.8608 
... 
vn -0.0000 0.0000 -1.0000 
vn 0.0152 0.9983 -0.0567 
... 
vt 0.0000 0.0000 0.0000 
vt 0.2500 0.0417 0.0000 
... 
f 1/1/1 2/2/2 3/3/3 
f 1/1/1 4/4/4 2/2/2 
+0

[標籤:JAVA]和[標籤:的javascript]是[** ** NOT相同](http://stackoverflow.com/questions/245062/whats-the-difference-between-javascript-and -java 「有什麼JavaScript和Java之間的區別?」) –

+0

我道歉,我的意思的javaScript哎呀:( – Canvas

回答

2

阿賈克斯,先生,是這樣的javascript「負荷」基於文本文件,在wepbage。

我推薦a simple library來幫助你,因爲跨瀏覽器的兼容性可能會非常棘手。

就像是說this one,它使用jQuery API作爲Ajax。

ajax({ 
    url: "/models/my_snazzy_model.obj", 
    success: function(data) { 
    console.log(data); // data is the text of your file. Woot! 
    } 
}); 
+0

現在,這片代碼 功能loadOBJ(){ \t \t AJAX({ \t \t \t網址: 「./Models/Torus.obj」, \t \t \t成功:function(data){ \t \t console.log(data); //數據是文件的文本。活泉! \t \t \t} \t \t}); \t} 但我仍然得到這個 的XMLHttpRequest無法加載文件:/// C:/用戶/ MrApproved /文檔/大學/ Year3/Ci312%20Graphics%20Algor /實驗室%20Structure%2021%2010%202012 /型號/Torus.obj。 Access-Control-Allow-Origin不允許Origin null。 – Canvas

+0

取決於瀏覽器,這可能不適用於'file://'協議。我會使用一個簡單的http服務器,例如[simple-server](https://github.com/balupton/simple-server)(通過node.js)來啓動一個http服務器來爲你的項目服務。 –

+0

試過了這個文件://,所以把一個簡單的文件加載到JavaScript中,並將它存儲到一個變量中是不可能的?只有當你創建一個服務器,然後訪問它...不是HTML5和JS在Internet Browsering中的前進方向嗎?我甚至把我的模型文件放在我的網站服務器上,並告訴它加載,並且仍然不允許NOPE ... – Canvas