我有一个本地文件,我尝试像这样加载纹理:
图片无法显示(方块是黑色的)。 当我将整个文件夹移动到服务器上并从那里加载时,图片就会显示出来。
我的问题是,为什么放在计算机上时不起作用,但放在服务器上就可以?所有文件都已经复制了,所以不是缺少文件的问题。我也尝试了绝对路径,但仍然没有结果。我需要在我的计算机上更改一些设置吗? 我正在Windows 7上使用Chrome 32.0.1700.76 m(撰写本文时的最新版本),并使用THREE.js r64。没有使用其他库。
var texture = THREE.ImageUtils.loadTexture( 'image.jpg' );
var cubeGeo = new THREE.CubeGeometry( 50, 50, 50 );
var cubeMat = new THREE.MeshBasicMaterial( { map: texture } );
var cube = new THREE.Mesh( cubeGeo, cubeMat );
scene.add( cube );
图片无法显示(方块是黑色的)。 当我将整个文件夹移动到服务器上并从那里加载时,图片就会显示出来。
我的问题是,为什么放在计算机上时不起作用,但放在服务器上就可以?所有文件都已经复制了,所以不是缺少文件的问题。我也尝试了绝对路径,但仍然没有结果。我需要在我的计算机上更改一些设置吗? 我正在Windows 7上使用Chrome 32.0.1700.76 m(撰写本文时的最新版本),并使用THREE.js r64。没有使用其他库。
--allow-file-access-from-files
解决了问题。显然浏览器有防止加载本地文件的保护措施。 - Daew