Queria solicitar si me pueden ayudar a reducir un codigo pues tengo dos dos funciones y las estoy repitiendo y entonces se me quedan en 4.
Para poner un poco en lugar, lo que hace este codigo es que hay dos paneles, uno a la izquierda y otro a la derecha. y en media un boton con una fecha que indica hacia la derecha y lo mimos con otro boton pero a la izquierdqa.
al pinchar en el boton hacia la derecha se me carga la funcion mostrarMensaje1 y en de la izquierda la funcion mostrarMensaje2.
aqui muestro el js.
Muchas gracias de antemano.
Código Javascript:
Ver original
var ul0; var ul0_li; var ul0_a; var ul1; var ul1_b; var ul1_a; var selected; var seleccion="tray-row selecctes selectodos"; var enlaceselect; var enlaceselect2; var ul0_aa; var ul1_bb; var claseprimerosli; var clonar; var todasul= document.getElementsByTagName('ul'); function seleccionar2(){ /*recorremos los enlaces del primer ul buscando el seleccionado y obtenemos la clase del padre li */ todasul= document.getElementsByTagName('ul'); ul0 = todasul[1]; ul0_a=ul0.getElementsByTagName('a'); for( var is=0; is < ul0_a.length; is++) { if (ul0_a[is].className==="tray-row selecctes") { ul0_a[is].className=seleccion; selected=ul0_a[is].className; enlaceselect=ul0_a[is]; // variable guardada del enlace seleccionado // padre li del enlace seleccionado ul0_li = ul0_a[is].parentNode.parentNode.className; ul0_liobject = ul0_a[is].parentNode.parentNode; } } } function mostrarMensaje1(){ ul0_a=todasul[0].getElementsByTagName('li'); ul1_b=todasul[1].getElementsByTagName('li'); ul0_aa=todasul[0].getElementsByTagName('a'); ul1_bb=todasul[1].getElementsByTagName('a'); for(var as=0;as < ul0_aa.length;as++) { if (selected==="tray-row selecctes selectodos") { //cogemos el li claseprimerosli=enlaceselect.parentNode.parentNode.className; //copiamos el li enlaceselect.parentNode.parentNode.cloneNode(true); //copia del enlaze seleccionado var clone_a=enlaceselect.cloneNode(true); var clonali=enlaceselect.parentNode.parentNode.cloneNode(false); } for(var i=0;i < ul1_bb.length;i++) { var clasesegundosli=ul1_bb[i].parentNode.parentNode.className; var elesegundosli=ul1_bb[i].parentNode.parentNode; var enlaceselect2= ul1_bb[i]; if (clasesegundosli===claseprimerosli) { elesegundosli.firstChild.nextSibling.nextSibling.nextSibling.appendChild(enlaceselect); enlaceselect.className="tray-row selecctes"; break; } } if (clasesegundosli!==claseprimerosli) { //clonacion del enlace seleccionado clone_a; enlaceselect.className="tray-row selecctes"; //clonacion del li de la seleccion clonali; var newNode= enlaceselect.parentNode.parentNode; var h5=newNode.getElementsByTagName("h5"); var clonah5=h5[0].cloneNode(true); var creadiv=document.createElement("div"); var clonediv=clonali.appendChild(creadiv); var insertedElement = clonali.insertBefore(clonah5, clonediv); clonediv.appendChild(clone_a); clonali.appendChild(clonediv); var padrediv=enlaceselect.parentNode; padrediv.removeChild(enlaceselect); elesegundosli.parentNode.appendChild(clonali); clone_a.className="tray-row selecctes"; break; } break; } //finde del for //finde la funcion } function mostrarMensaje2(){ ul0_a=todasul[0].getElementsByTagName('li'); ul1_b=todasul[1].getElementsByTagName('li'); ul0_aa=todasul[0].getElementsByTagName('a'); ul1_bb=todasul[1].getElementsByTagName('a'); for(var as=0;as < ul1_bb.length;as++) { if (selected==="tray-row selecctes selectodos") { //cogemos el li claseprimerosli=enlaceselect.parentNode.parentNode.className; //copiamos el li enlaceselect.parentNode.parentNode.cloneNode(true); //copia del enlaze seleccionado var clone_a=enlaceselect.cloneNode(true); var clonali=enlaceselect.parentNode.parentNode.cloneNode(false); } for(var i=0;i < ul0_aa.length;i++) { var clasesegundosli=ul0_aa[i].parentNode.parentNode.className; var elesegundosli=ul0_aa[i].parentNode.parentNode; var enlaceselect2= ul0_aa[i]; if (clasesegundosli===claseprimerosli) { elesegundosli.firstChild.nextSibling.nextSibling.nextSibling.appendChild(enlaceselect); enlaceselect.className="tray-row selecctes"; break; } } if (clasesegundosli!==claseprimerosli) { //clonacion del enlace seleccionado clone_a; enlaceselect.className="tray-row selecctes"; //clonacion del li de la seleccion clonali; var newNode= enlaceselect.parentNode.parentNode; var h5=newNode.getElementsByTagName("h5"); var clonah5=h5[0].cloneNode(true); var creadiv=document.createElement("div"); var clonediv=clonali.appendChild(creadiv); var insertedElement = clonali.insertBefore(clonah5, clonediv); clonediv.appendChild(clone_a); clonali.appendChild(clonediv); var padrediv=enlaceselect.parentNode; padrediv.removeChild(enlaceselect); elesegundosli.parentNode.appendChild(clonali); clone_a.className="tray-row selecctes"; break; } break; } //finde del for //finde la funcion }