Javascript 谷歌Chrome Android平板电脑(Three.js不工作)
我试图在Google Chrome应用程序上显示一个3.js模型,但它不起作用。在destop浏览器上出现以下错误: (Javascript 谷歌Chrome Android平板电脑(Three.js不工作),javascript,html,three.js,Javascript,Html,Three.js,我试图在Google Chrome应用程序上显示一个3.js模型,但它不起作用。在destop浏览器上出现以下错误: (three.js:29522 XMLHttpRequest无法加载file:///C:/Users/bruechic/Desktop/html5_demo/ThreeJS/models/R8.mtl. 跨源请求仅支持协议方案:http、数据、chrome、chrome扩展、https。) 所以我必须用“-Chrome.exe——允许从文件访问文件”打开Chrome来运行它 是否
three.js:29522 XMLHttpRequest无法加载file:///C:/Users/bruechic/Desktop/html5_demo/ThreeJS/models/R8.mtl. 跨源请求仅支持协议方案:http、数据、chrome、chrome扩展、https。
)
所以我必须用“-Chrome.exe——允许从文件访问文件”打开Chrome来运行它
是否有可能在Android上的Chrome应用程序中运行我的应用程序?Firefox应用程序在Android上运行良好:-/
源代码:
THREE.Loader.Handlers.add(/\.dds$/i, new THREE.DDSLoader());
var mtlLoader = new THREE.MTLLoader();
mtlLoader.setPath('ThreeJS/models/');
mtlLoader.load('R8.mtl', function(materials) {
materials.preload();
var objLoader = new THREE.OBJLoader();
objLoader.setMaterials(materials);
objLoader.setPath('ThreeJS/models/');
objLoader.load('R8.obj', function(object) {
你试过在Android上运行它吗?将所有内容放在相对路径中,不指定协议。是的,我在android Chrome应用程序上尝试过,但只显示容器,没有模型。我不是three.js方面的专家,我只是复制了一个模型加载器,你说的相对路径是什么意思?在你的代码中,你使用相对路径,所以它已经在做了,假设文件在正确的位置。基本上,将你的应用程序放在一个文件夹中,并将ThreeJS和models文件夹放在该文件夹中。如果它不是那样工作的话,那么它可能和你在桌面上遇到的问题是一样的,但不要指望它。我试过了,但它已经起作用了,chrome似乎阻止了所有文件请求,但为什么firefox对我的代码没问题呢。顺便说一句,感谢您的快速回答:-)您发布的桌面版错误可能与Android设备上的错误完全无关。你是如何从Android Chrome上浏览网页(不是应用!)的?在线three.js示例在平板电脑上有效吗?学习如何使用分析问题。