Si hay alrededor de 10 botones y los botones están numerados del 1 al 10, si se hace clic en el botón 1, se crea el objeto 1. Si se hace clic en el botón 2, se crea el objeto 2 y se eliminan los objetos restantes 1, 3 y 4. Quiero convertirme en En el presente caso, se implementa mediante codificación dura, pero quiero mantener este código limpio y breve. Ayuda.
este es mi codigo
document.getElementById("leg_type2").addEventListener("click", function() { Group1.children[1].visible = !Group1.children[1].visible; Group1.children[0].visible = false; Group1.children[2].visible = false; Group1.children[0].scale.set(0, 0, 0) Group1.children[1].scale.set(1, 1, 1) Group1.children[2].scale.set(0, 0, 0) }); document.getElementById("leg_type3").addEventListener("click", function() { Group1.children[2].visible = !Group1.children[2].visible; Group1.children[1].visible = false; Group1.children[0].visible = false; Group1.children[0].scale.set(0, 0, 0) Group1.children[1].scale.set(0, 0, 0) Group1.children[2].scale.set(1, 1, 1) });Puede crear una función que haga este trabajo por usted:
document.getElementById("leg_type2") .addEventListener("click", function () { toggle(2); }); document.getElementById("leg_type3") .addEventListener("click", function () { toggle(3); }); function toggle(index) { const { children } = Group1; for (let i = 0; i < children.length; i++) { if (i !== index) { children[i].visible = false; children[i].scale.set(0,0,0); } } children[index].visible = true; children[index].scale.set(1, 1, 1); }