un novato de JQuery aquí.
El siguiente código jquery para un selector de idioma (para ser utilizado en un sitio web en varios idiomas, digamos) debe mostrar el idioma activo en el que hizo clic el usuario. El problema es que después de que la página web se vuelve a cargar en el idioma elegido, el selector de idioma se establece de forma predeterminada en el idioma de la etiqueta div. No muestra el idioma elegido por el usuario.
Intenté configurar una cookie y hacer algo con ella. Pero no pude hacerlo funcionar. ¿Cómo puedo editar el código para que el botón de selección de idioma muestre el ícono de idioma activo elegido por el usuario?
Aquí está el código en jquery. (el backend/frontend del sitio web está construido en nodejs/ejs+jquery)
$("#lang-menu").hover( function(){ $(this).addClass("cls-border-lang"); $(this).children().eq(0).addClass("cls-borderbottom-lang"); $("#lang-menu ul").stop().slideToggle(100); }, function(){ $(this).removeClass("cls-border-lang"); $(this).children().eq(0).removeClass("cls-borderbottom-lang"); $("#lang-menu ul").stop().slideToggle(100); } ); /// click languages $("#lang-menu ul li").on("click", function(){ //select lang and apply changes // $lang= $(this).html(); $("#lang-menu div").html($lang); }); }Si no desea utilizar cookies, puede almacenar el idioma predeterminado en el Almacenamiento de sesión .
Si elige seguir esta ruta, tendría que editar su controlador de clic para sobrescribir la variable de idioma seleccionada almacenada en su almacenamiento de sesión y también editar su código que representa el idioma seleccionado para mostrar siempre lo que está almacenado en el almacenamiento de sesión.