¿Puedo usar JavaScript para crear una página web con dos idiomas para que los usuarios puedan cambiar a quien quieran haciendo clic en un botón (sin el traductor de Google)?

Sugeriría usar archivos de configuración.

Digamos que tiene un archivo config.json. En ese archivo tendrías algo como esto ……

“`

{

“título”: {

“en”: “Hola”,

“es”: “Hola”

},

“pags”: {

“en”: {

“idName1”: “alguna cadena de caracteres”,

“idName2”: “alguna otra cadena de caracteres”,

“idName3”: “otra cadena de caracteres”,

},

“es”: {

“idName1”: “alguna cadena de caracteres en español”,

“idName2”: “alguna otra cadena de caracteres en español”,

“idName3”: “otra cadena de caracteres en español”,

},

},

“enlaces” ………

}

“`

entonces lo incluiría en su javascript y manipularía los datos en función de si estaba en modo inglés o español. En su html, tendría un montón de elementos vacíos que tenían identificadores y / o nombres de clase muy específicos sobre los que podría utilizar JavaScript para adjuntar los datos adecuados de sus archivos de configuración.

Hay múltiples opciones que puedes usar.

  1. Lo más simple sería crear dos páginas y cambiar entre dos idiomas con menú desplegable o algo
  2. Al cargar contenido parcial de cada idioma usando jquery load() jQuery API Documentation $( "#content" ).load( "/content-in-danish.html #content .container" );
  3. Los elementos definidos deben traducirse y almacenar la traducción en una matriz y recorrer la matriz y reemplazar el contenido del elemento.

Y probablemente muchas otras opciones para satisfacer la restricción y el requisito de diseño.

Sí, como todos los demás dicen. Mi pregunta para usted es, ¿por qué no querría usar el traductor de Google o alguna otra API? Lo que me lleva a mi siguiente pregunta. ¿Por qué querrías reinventar la rueda cuando ya está hecha?

Usa lo que tienes disponible y sigue adelante. A menos que tenga un equipo de desarrolladores y solo quiera competir porque cree que puede hacerlo mejor.

Cree una función onclick para capturar innerHTML, llame a otra función que realizó que llama y pasa su cadena a la API del traductor, y que toma una devolución de llamada que recibe la cadena traducida y la devuelve a la función original para reemplazar el texto en el div , o simplemente lo hace por sí mismo.

Sí. Desearía tener una copia del texto en los idiomas que desea traducir a algún lugar para poder obtenerlo a través de JavaScript. Puede usar javascript puro para reemplazar html y, por lo tanto, texto en un div con su texto actualizado con las siguientes líneas de código:

elemento var = document.getElementById (‘text-div-id’);

element.innerHTML.replace (
Este es el nuevo texto en inglés
);

Absolutamente. Javascript le permitirá intercambiar texto con el clic de un botón o tecla. Sin embargo, tendrá que escribir su propio motor de traducción o tener una copia del texto en el idioma al que desea traducir.