我试图使用本地存储来存储一些纹理对象,但它似乎不起作用.
for (var i = 0; i < 6; i++) {
localStorage.setItem("name" + i, Transition.blurPano.getTexture(path + img_name[i] + ".jpg", dfrd[i], true, i));
console.log(localStorage.getItem("name" + i) == Transition.blurPano.getTexture(path + img_name[i] + ".jpg", dfrd[i], true, i));
Transition.blurPano.mesh.material.materials[i].map = localStorage.getItem("name" + i);
}
Run Code Online (Sandbox Code Playgroud)
这里我试图在本地存储中存储一个键值对,key = "name" + i
而value是gettexture函数返回的纹理对象,但这似乎不起作用.
Transition.start = function(){
for(var j = 0; j < 6; j++)
{
console.log("FOR LOOP");
(function(){
console.log("INNER Function");
var image = new Image();
image.src = path + Config.imgName[j] + ".jpg";
image.onload = function () {
console.log("GONE");
clearImages[source].push(image);
console.log(image);
};
})();
}
}
Run Code Online (Sandbox Code Playgroud)
在此控制台上"FOR LOOP"和"INNER Function"打印6次,但"GONE"打印12次.我无法弄清楚原因.我想运行onload的主体也是6次.
并Transition.start
从这样的onDocumentKeyDown
监听器中调用
function onDocumentKeyDown( event )
{
if (keyPressed == 38) //up arrow
Transition.start();
}
Run Code Online (Sandbox Code Playgroud)