Buenas a todos... Este código me imprime todas las letras juntas... Alguien sabe cómo hacer para que imprima de una???

Iniciado por Jot_Ade_Em3, 18 Julio 2021, 06:28 AM

0 Miembros y 1 Visitante están viendo este tema.

Jot_Ade_Em3

Código (javascript) [Seleccionar]

function hacer(){
var aLetras = new Array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'ñ', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w','x', 'y', 'z');

aLetras = aLetras.sort(function() {return Math.random() - 0.5});

var cajaLetra1 = document.getElementById("campo1");
cajaLetra1.value = aLetras[0];
var cajaLetra2 = document.getElementById("campo2");
cajaLetra2.value = aLetras[1];
var cajaLetra3 = document.getElementById("campo3");
cajaLetra3.value = aLetras[2];
var cajaLetra4 = document.getElementById("campo4");
cajaLetra4.value = aLetras[3];
var cajaLetra5 = document.getElementById("campo5");
cajaLetra5.value = aLetras[4];
var cajaLetra6 = document.getElementById("campo6");
cajaLetra6.value = aLetras[5];
var cajaLetra7 = document.getElementById("campo7");
cajaLetra7.value = aLetras[6];
var cajaLetra8 = document.getElementById("campo8");
cajaLetra8.value = aLetras[7];
var cajaLetra9 = document.getElementById("campo9");
cajaLetra9.value = aLetras[8];
var cajaLetra10 = document.getElementById("campo10");
cajaLetra10.value = aLetras[9];
var cajaLetra11 = document.getElementById("campo11");
cajaLetra11.value = aLetras[10];
var cajaLetra12 = document.getElementById("campo12");
cajaLetra12.value = aLetras[11];
var cajaLetra13 = document.getElementById("campo13");
cajaLetra13.value = aLetras[12];
var cajaLetra14 = document.getElementById("campo14");
cajaLetra14.value = aLetras[13];
var cajaLetra15 = document.getElementById("campo15");
cajaLetra15.value = aLetras[14];
var cajaLetra16 = document.getElementById("campo16");
cajaLetra16.value = aLetras[15];
var cajaLetra17 = document.getElementById("campo17");
cajaLetra17.value = aLetras[16];
var cajaLetra18 = document.getElementById("campo18");
cajaLetra18.value = aLetras[17];
var cajaLetra19 = document.getElementById("campo19");
cajaLetra19.value = aLetras[18];
var cajaLetra20 = document.getElementById("campo20");
cajaLetra20.value = aLetras[19];
var cajaLetra21 = document.getElementById("campo21");
cajaLetra21.value = aLetras[20];
var cajaLetra22 = document.getElementById("campo22");
cajaLetra22.value = aLetras[21];
var cajaLetra23 = document.getElementById("campo23");
cajaLetra23.value = aLetras[22];
var cajaLetra24 = document.getElementById("campo24");
cajaLetra24.value = aLetras[23];
var cajaLetra25 = document.getElementById("campo25");
cajaLetra25.value = aLetras[24];
var cajaLetra26 = document.getElementById("campo26");
cajaLetra26.value = aLetras[25];
var cajaLetra27 = document.getElementById("campo27");
cajaLetra27.value = aLetras[26];
   

var resultado = document.getElementById('resultado');
var html = aLetras;

resultado.innerHTML = html;
}

Tusso4


MinusFour

Tienes que demorar la instrucción por un determinado tiempo.

Nadie usa new Array() por cierto ahora se utiliza:

Código (javascript) [Seleccionar]

let aLetras = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'ñ', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w','x', 'y', 'z']


No entiendo exactamente donde quieres imprimir las letras, parece que tienes 27 inputs pero también al final imprimes todo.

sort también muta el arreglo, así que no es necesario reasignar el mismo arreglo a la variable.

Quizás algo que podrías hacer sería:

Código (javascript) [Seleccionar]

for(let i = 0; i < aLetras.length; i++){
 setTimeout(function(){
   let elem = document.getElementById(`campo${i+1}`);
   elem.value = aLetras[i];
 }, i * 300);
}


Pero sin entender exactamente como los quieres mostrar de una a una, es difícil saber.

Jot_Ade_Em3

function hacer(bot){

var aLetras = new Array('a', 'b', 'c');

aLetras = aLetras.sort(function() {return Math.random() - 0.5});

var cajaLetra1 = document.getElementById("campo1");
cajaLetra1.value = aLetras[0];
var cajaLetra2 = document.getElementById("campo2");
cajaLetra2.value = aLetras[1];
var cajaLetra3 = document.getElementById("campo3");
cajaLetra3.value = aLetras[2];

var txtarea = document.getElementById('ta');
var html = new Array(aLetras[bot]);
txtarea.value+=html;
txtarea.focus();
return;

}