logo El diario de Pepe Molina (Caricatos)

yo

Vamos a plantear una selección de contenidos por idioma usando banderas flameantes indicando el idioma activo.


Última caricatura

IV Asamblea de la AEC: IV Asamblea General de la Asociación Española de Caricaturistas

IV Asamblea de la AEC

RSS de las imágenes: rss


La Cita

La realización conlleva la idea de que lo que sé es definitivo

Pierre Bonnard, pintor y artista gráfico francés (1867-1947).


En esta zona están las páginas personales del autor.


Mis clientes ahora también son mis amigos (aunque les cobre).


En Mis amigos Informáticos hay una pequeña colección de páginas de colegas webmasters..


En Mis amigos artistas podemos encontrar artistas de cualquier índole (dibujantes, pintores, escritores...)


Las recomendaciones que proponemos son de índole variada.


Aquí un cajón de sastre de enlaces.


Nos referencian desde sitios de toda índole.


Puede contribuir a mantener esta página con su donativo.


botón pay-pal

Banderitas flameantes

emoticón de Caricatos Publicado el día 25 de septiembre de 2011
id=42; categorías: Vicisitudes de un Webmaster, Globalización, Programación

Bandera de Francia Bandera de Inglaterra Bandera de España Vamos a plantear una selección de contenidos por idioma usando banderas flameantes indicando el idioma activo. La idea es muy vieja, y su implementación puede matizarse; se podría cambiar el contenido de una capa (etiqueta div), o tener los contenidos en sendas capas ocultas, mostrando la asociada al idioma seleccionado. Nosotros nos decantamos por la segunda opción, aunque con pocos cambios pueden implementarse las alternativas (seguro que hay alguna más).

Las banderitas que se ven en el apunte anterior son imágenes animadas (gif animados), y se mantienen siempre animadas, así que si quisiéramos saber si se ha seleccionado deberíamos aplicar estilos (ya sea opacidad, borde, color de fondo), pero nosotros también detendremos esa animación tal como se ve en las banderas del principio de este apunte.

Consideraciones

Vemos que las banderas de este apunte son estáticas y están escaladas, y si nos fijamos en las imágenes tratadas con el lenguaje php (el que disponemos en nuestro servidor), las animaciones se pierden ya que simplemente no está soportado por el lenguaje.

Acabamos de dar las pautas para llevar a cabo nuestro cometido, simplemente mostramos la imagen original animada o creamos una copia con nuestro lenguaje, según la quisiéramos: animada o no.

Nosotros usaremos nuestro comodín, pero también podría tratarse de un fichero independiente cuya sintaxis podría ser: "bandera.php?idioma=hispano&animada=no". Para evitar problemas de sintaxis por el uso de caracteres especiales evitaremos parámetros con acentos y eñes.

Aquí el resultado:

Bandera de España Bandera de España

Y el código:

<?php
$idioma = strtolower($_GET["idioma"]);
switch($idioma)	{
	case "english":		$url = "inglesa.gif"; break;
	case "francoise":	$url = "francesa.gif"; break;
	default:		$url = "hispana.gif"; break;
};
$url = "diario/dibujos/$url";
$animada = strtolower($_GET["animada"]);
header("Content-Type: image/gif");
if ($animada == "no")	{
	$img = imagecreatefromgif($url);
	imagegif($img);
	imagedestroy($img);
}
else	{
	echo file_get_contents($url);
}
?>

Hemos suprimido del código real las líneas que necesitamos de nuestro comodín para evitar confusiones y añadido las propias del lenguaje. Para crear un fichero php real (recordemos que estamos usando un comodín), solo debemos verificar las rutas de los ficheros que usemos y sus respectivos nombres.

La Torre de Babel

Torre de Babel La Torre de Babel, pintura al óleo sobre lienzo de Pieter Brueghel el Viejo.

Como cualquier buen constructor nos preocuparemos de tener todos los elementos para poder levantar nuestro edificio. Nuestro ladrillos serán las tres banderas, todas en sus dos estados (estática y animada), y tres textos, el mismo pero uno para cada idioma.

Ya que usamos el título "Torre de Babel", el texto que utilizaremos en la selección por idiomas es el que hemos rescatado de la Wikipedia, de donde también hemos obtenido la imagen adjunta.

Usaremos una capa para poner las seis banderas considerando los estilos para crear el efecto, y cuidaremos de darle un identificador "id" que nos ayude a crear nuestro código. También tendremos otra capa para albergar los tres párrafos necesarios (uno por cada idioma).

Bandera de España Bandera de España Bandera de Inglaterra Bandera de Inglaterra Bandera de Francia Bandera de Francia

La Torre de Babel es una construcción mencionada en el antiguo Testamento. Según algunas interpretaciones del capítulo 11 del Génesis, los hombres pretendían, con la construcción de esta torre, alcanzar el Cielo.

The Tower of Babel was an enormous tower built in the plain of Shinar.

La tour de Babel est un édifice mythique qui était selon la Genèse une tour que souhaitaient construire les hommes pour atteindre le ciel.


Ahora tan solo nos queda pulsar sobre las banderas inactivas (estáticas con borde gris), para ver el efecto. A continuación mostramos el código que asociamos a cada imagen estática:

var idiomas = ["hispana", "inglesa", "francesa"];
function idioma()	{
	soy_idioma = this.id.split("_")[1];
	for (i = 0, total = idiomas.length; i < total; i++)	{
		tag("bandera_" + idiomas[i] + "_no").style.display = (soy_idioma == idiomas[i]) ? "none":"inline";
		tag("bandera_" + idiomas[i] + "_si").style.display = (soy_idioma != idiomas[i]) ? "none":"inline";
		tag("texto_" + idiomas[i]).style.display = (soy_idioma != idiomas[i]) ? "none":"block";
	}
}

No nos olvidemos que hemos puesto en los identificadores de los elementos que usamos en el efecto el nombre del idioma (véase la variable "idiomas").

Notas finales (algunas)

Pinchando sobre la pintura que acompaña este apunte, se puede encontrar más información sobre la Torre de Babel, junto a la fuente donde se ha obtenido (Wikipedia).

No nos olvidamos de la accesibilidad, pero como no queríamos poner enlaces superfluos, lo que haremos es explicar como conseguir ese cometido. Por ejemplo enlazando en cada bandera con la pagina asociada al idioma correspondiente (de la Wikipedia), y cancelando el enlace después de realizar el efecto (entregando el valor "false" al enlace).

Zona de comentarios

Este apunte aún no tiene comentarios.

Evaluación

Valoración de esta página: (apunte.42) valor

Valoración evaluar evaluar evaluar evaluar evaluar evaluar evaluar evaluar evaluar evaluar

Respuesta: Zona de mensajes (proceso de evaluación)

Historial de navegación

Esta página ha sido visitada en 10037 ocasiones


Disponemos de rss sindicar

Y del Mapa del sitio, además del sitemap.xml.


Aquí podemos encontrar los apuntes más visitados.

"Top 10" reemplaza a la sección Últimos apuntes.


Una buena forma de buscar un apunte es a partir de su categoría.


También es posible buscar apuntes por medio de las etiquetas (tags).


Hemos decidido poner al alcance de todos algunos comodines.

Adjuntamos una versión reducida del "buscador interno" que vemos en la lista anterior:

Buscar en apuntes

También estamos recopilando antiguas páginas del sitio.


Desde este recuadro se puede hacer una búsqueda cronológica.


Se puede crear una postal nueva desde el enlace del sector "Otras páginas del dominio", o editar la que sale en el recuadro, pulsando sobre ella..

http://www.pepemolina.com/postales/Fondos/FONDO005.gif
http://www.pepemolina.com/postales/Musicales/Imagen1.gif
http://www.pepemolina.com/postales/Musicales/Imagen2.gif
http://www.pepemolina.com/postales/Musicales/Imagen3.gif
http://www.pepemolina.com/postales/Musicales/Imagen4.gif
http://www.pepemolina.com/postales/Musicales/Imagen5.gif
http://www.pepemolina.com/postales/Musicales/Imagen6.gif
http://www.pepemolina.com/postales/Musicales/Imagen7.gif
Postal Digital
Postal Digital
enlace a la postal
Copyright © 2002-2024 www.pepemolina.com
RSS rss | Ver Mapa del sitio