Autor
|
Tema: [Resuelto] duda de script (Leído 6,125 veces)
|
fernandorb10
Desconectado
Mensajes: 10
|
buenas noches, Soy nuevo en este foro y no se bien si esto va aqui, saludos a todos. Espero ayudar y ser ayudado. Al grano, mi duda es que tengo un script de cambio de idioma en mi hotspot y es el siguiente. <script type="text/javascript" > var idioma = "hispano"; function ponerIdioma(cual) { document.getElementById(idioma).style.display = "none"; idioma = cual; document.getElementById(idioma).style.display = "block"; } </script>
BOTONES <button onClick="ponerIdioma('english');" name="boton" style='width:120px; height:120px' type="submit"><img src="img/United_Kingdom64.png";> <br>Click here for English Instructions </button> <button onClick="ponerIdioma('aleman');" name="boton" style='width:120px; height:120px' type="submit"><img src="img/Germany64.png";> <br>Klick hier für die Anweisung in deutsch </b></button> <button onClick="ponerIdioma('hispano')" name="boton" style='width:120px; height:120px' type="submit"><img src="img/Spain64.png"; > <br>Pincha aquí para instruciones en español. </button>
Y estos son los div con la id de (hispano, english o aleman) texto en español. <div id="english" style="display: none;" > texto en ingles <div id="aleman" style="display: none;" > TEXTO EN ALEMAN
Vale, hasta aquí bien, funciona correctamente. Pero yo necesito que cambie mas div aparte de este texto, necesito que cambie dos div's mas. En total al pinchar al boton tiene que hacer 3 cambios de texto o imagen en la pagina. ¿Como podria hacerlo? Gracias de antebrazo Mod: Obligatorio el uso de etiquetas GeSHi.
|
|
« Última modificación: 21 Septiembre 2015, 16:44 pm por #!drvy »
|
En línea
|
|
|
|
MinusFour
|
Sin saber la estructura de tu archivo HTML y los elementos en especifico que quieres cambiar, no podemos ayudarte. Te recomiendo que uses clases para elementos del mismo idioma: <div class="english">Text1 </div> <div class="english">Text2 </div> <div class="english">Text3 </div> <div class="hispano">Text1 </div> <div class="hispano">Text2 </div> <div class="hispano">Text3 </div>
Posible javascript: var idioma = "hispano"; function ponerIdioma(cual) { [idioma, cual].forEach(function(i){ toggleClassVisibility(i); idioma = i; }); } function toggleClassVisibility(cs){ var ele = document.getElementsByClassName(cs); Array.prototype.forEach.call(ele, function(el){ el.style.display = el.offsetParent !== null ? 'none' : 'block'; }); }
Con jQuery es mucho más sencillo: var idioma = "hispano"; function ponerIdioma(cual){ $('.' + idioma).hide(); $('.' + cual).show(); idioma = cual; }
|
|
« Última modificación: 18 Septiembre 2015, 22:28 pm por MinusFour »
|
En línea
|
|
|
|
fernandorb10
Desconectado
Mensajes: 10
|
Sin saber la estructura de tu archivo HTML y los elementos en especifico que quieres cambiar, no podemos ayudarte. Te recomiendo que uses clases para elementos del mismo idioma: <div class="english">Text1 </div> <div class="english">Text2 </div> <div class="english">Text3 </div> <div class="hispano">Text1 </div> <div class="hispano">Text2 </div> <div class="hispano">Text3 </div>
Posible javascript: var idioma = "hispano"; function ponerIdioma(cual) { [idioma, cual].forEach(function(i){ toggleClassVisibility(i); idioma = i; }); } function toggleClassVisibility(class){ var ele = document.getElementsByClassName(class); Array.prototype.forEach.call(ele, function(el){ el.style.display = el.style.display === 'none' ? 'block' : 'none'; }); }
Con jQuery es mucho más sencillo: var idioma = "hispano"; function ponerIdioma(cual){ $('.' + idioma).hide(); $('.' + cual).show(); idioma = cual; }
Buenas Minus, muchisimas gracias por tu ayuda, pero aún no me funciona. Veamos, he puesto el script de jQuery y he puesto los div tal como me has pedido. <script type="text/javascript" > var idioma = "hispano"; function ponerIdioma(cual){ $('.' + idioma).hide(); $('.' + cual).show(); idioma = cual; } </script> Pero en el boton onclick deberia de cambiar algo? <button onClick="ponerIdioma('hispano');" name="boton" style='width:120px; height:120px' type="submit"><img src="img/Spain64.png"; > <br>Pincha aquí para instruciones en español.</button>
|
|
« Última modificación: 18 Septiembre 2015, 21:07 pm por fernandorb10 »
|
En línea
|
|
|
|
MinusFour
|
Como te explique en el tema anterior, depende mucho de la estructura final de tu HTML, la cual no tenemos. Porfavor, usa las etiquetas [code ] [ /code] necesarias. Espero tambien que hayas cargado jQuery.
|
|
|
En línea
|
|
|
|
fernandorb10
Desconectado
Mensajes: 10
|
De acuerdo, ya entiendo lo de la etiqueta code.4 Script le cargo así o bien le pongo en la pagina de index.html mia como te pusé arriba. <script src="jquery.js"></script>
La estructura es sencilla, es un html que tiene 3 botones, uno para cada idioma (aleman, ingles y español), al pinchar en uno de esos botones tiene que cambiar 2 imagenes que ya tengo en mi carpeta de img (al pinchar en boton ingles cambia 2 imagenes a imagenespañol1 a imageningles1 y imagenespañol2 por imageningles2 por ejemplo) y el texto que ya tengo en esos idiomas. BOTONES:<button onClick="ponerIdioma('english');" name="boton" style='width:120px; height:120px' type="submit"><img src="img/United_Kingdom64.png";> <br>Click here for English Instructions </button> <button onClick="ponerIdioma('aleman');" name="boton" style='width:120px; height:120px' type="submit"><img src="img/Germany64.png";> <br>Klick hier für die Anweisung in deutsch </b></button> <button onClick="ponerIdioma('hispano');" name="boton" style='width:120px; height:120px' type="submit"><img src="img/Spain64.png"; > <br>Pincha aquí para instruciones en español. </button>
Gracias por tu ayuda.
|
|
« Última modificación: 18 Septiembre 2015, 21:16 pm por fernandorb10 »
|
En línea
|
|
|
|
MinusFour
|
Si, pero eso no es todo el codigo HTML. Necesitamos ver el código HTML de los contenedores.
|
|
|
En línea
|
|
|
|
fernandorb10
Desconectado
Mensajes: 10
|
<table width="10%" style="margin-top: 10%;" bgcolor="white" opacity: 0.3;> <th colspan=2> <h1> <font size="15px" color="#073763"> INSTRUCTIONS FOR USE <br> <button onClick="ponerIdioma('english');" name="boton" style='width:120px; height:120px' type="submit"><img src="img/United_Kingdom64.png";> <br>Click here for English Instructions</button> <button onClick="ponerIdioma('aleman');" name="boton" style='width:120px; height:120px' type="submit"><img src="img/Germany64.png";> <br>Klick hier für die Anweisung in deutsch</b></button> <button onClick="ponerIdioma('hispano');" name="boton" style='width:120px; height:120px' type="submit"><img src="img/Spain64.png"; > <br>Pincha aquí para instruciones en español.</button> </font> </h1></th> <tr> <td> <div class="hispano" > <img src="img/eslogin.png"> </div> <div class="english" style="display: none;" > <img src="img/button9.png"> </div> <div class="aleman" style="display: none;" > <img src="img/button.png"> </div> </td> <td> <div class="hispano" > <img src="img/esusers.png" alt="Español"/> </div> <div class="english" style="display: none;" > <img src="img/button10.png" alt="Español"/> </div> <div class="aleman" style="display: none;" > <img src="img/button.png"> </div> </td> </tr> <tr> <td> <div class="hispano" > <div style="color:black; font-size: 16px"> <b>TEXTO EN ESPAÑOL </b> </div> </div> <div class="english" style="display: none;" > <div style="color:black; font-size: 16px"> TEXTO EN INGLES</div> </div> <div class="aleman" style="display: none;" > <div style="color:black; font-size: 16px"> TEXTO EN ALEMAN </b></div> </div> </td> <td align="center"> IMAGEN </td> </tr> </table> </td> </tr> </table>
Necesitas algo mas?
|
|
|
En línea
|
|
|
|
|
fernandorb10
Desconectado
Mensajes: 10
|
guau minus, ahora hace falta meterlo al notepad que no me funciona. Dime si ves algo erroneo que a mi vista se escapa <!doctype html>
<html>
<head> <title>A blank HTML page</title> <meta charset="utf-8" />
<script type="text/javascript">
var idioma = "hispano"; function ponerIdioma(cual){ $('.' + idioma).hide(); $('.' + cual).show(); idioma = cual; }
</script>
</head>
<body> <button onclick="ponerIdioma('english')">English</button> <button onclick="ponerIdioma('hispano')">Hispano</button>
<div class="english" style="display: none;">Ingles</div> <div class="english" style="display: none;">Ingles</div> <div class="english" style="display: none;">Ingles</div> <div class="hispano">Español</div> <div class="hispano">Español</div> <div class="hispano">Español</div> </body>
</html>
|
|
|
En línea
|
|
|
|
MinusFour
|
No tienes importado jQuery.
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
{Resuelto} [Duda VBS] Clipboardd.
« 1 2 3 »
Scripting
|
xassiz_
|
22
|
11,910
|
15 Septiembre 2009, 16:45 pm
por xassiz_
|
|
|
[Resuelto] Abrir primero un script que una página .html
Desarrollo Web
|
Puntoinfinito
|
1
|
2,520
|
12 Enero 2013, 22:25 pm
por lipman
|
|
|
[Resuelto] Problema al probar los script de entrada al localhost
PHP
|
Blitox1570
|
7
|
3,804
|
3 Julio 2015, 17:20 pm
por DarK_FirefoX
|
|
|
Problema con While En Script de Ubuntu (Resuelto)
Scripting
|
Aitorseven
|
8
|
8,304
|
21 Mayo 2018, 20:26 pm
por Aitorseven
|
|
|
[DUDA SQL] IF en SQL Script [RESUELTO]
Bases de Datos
|
Reent
|
0
|
2,854
|
4 Agosto 2020, 15:34 pm
por Reent
|
|