Description:
Hello, I was hoping to create a loading screen in Aframe. I found the page below, it's about object loading but I couldn't figure out how to use it...
https://aframe.io/docs/0.8.0/core/asset-management-system.html#lt-a-asset-item-gt
<a-asset-item class="model" id="back" src="./models/back.obj"></a-asset-item>
<img id="backTex" src="./textures/back.png">
<a-asset-item class="model" id="front" src="./models/front.obj"></a-asset-item>
<img id="frontTex" src="./textures/front.png">
-
var models = document.getElementsByClassName("model");
/*trial 1*/
for(var i in models){
models[i].addEventListener("loaded",()=>{console.log("loaded!")});//CAN'T FIND addEventListener
}
function OnLoaded(){
console.log("loaded!");
}
/*trial 2*/
for(var i in models){
models[i].loaded = OnLoaded;
}
On the html file, I have some <a-asset-item class="model" id="mainModel" src="./models/mainModel.obj"></a-assets-item>
,
I stored all of models that has model
class. And I tried to add event listener to its child but it said "addEventListenr is not a function"
I don't think there is addEventListener to this element.
So I console.logeed the children and I saw some events like variables in it (onclick, onmousedown etc..) and added the variable, "loaded" and "model-loaded" to the children. This time no error but nothing happened.
I also tried with the event name "model-loaded" but also didn't work... https://github.com/aframevr/aframe/blob/master/src/components/obj-model.js#L51
Can someone give me some examples of how to use loaded
event for<a-assets-item>
?
Thanks in advance.
- A-Frame Version: 0.7.1
- Reproducible Code Snippet or URL:
Update
for(var i = 0; i < this.models[i].length; i++){
this.models[i].addEventListener("model-loaded", ()=>{console.log("Hello!");})
this.models[i].addEventListener("loaded", ()=>{console.log("Hello!");})
}
I changed the "for/in" to regular for loop. Now it doesn't cause any error but doesn't do anything...