Comunidad de diseño web y desarrollo en internet online

Una página para todas

Citar            
MensajeEscrito el 03 Feb 2006 11:40 pm
Muy buenas, estoy realizando una galería de imagenes cargandolas desde un xml. Al pinchar en la imagen utilizo una función para que me abra la imagen en otra página.

//el ejmplo fue descargado de esta página, creo
descripcion = function()
{
getURL(image[p], "_blank");
}
//*************************************************//
ref_btn.onRelease = descripcion;

Mi pregunta es si puedo utilizar la misma página para abrir las demás imágenes, hacieno algo así...

descripcion = function()
{
getURL("http://www.lapaginaquesea.es/links/img.htm", image[p], "_blank");
}
//*************************************************//
ref_btn.onRelease = descripcion;
La idea es usar sólo una página para todas las imágenes.


Si hay alguien que me quiera enseñar la manera se lo agradezco.
Ya he aprendido a hacer la galería y me gustaría ampliar un poco mis conocimientos sobre el tema.. gracias!

Por vibet

38 de clabLevel



 

msie
Citar            
MensajeEscrito el 03 Feb 2006 11:52 pm
Si te entendí bien tú quieres que en una sola página se muestren todoas las imagenes, si es así, pues te puedo ayudar con el siguiente codigo que esta completamente funcional.

Código :

stop();
img=5       //indica el total de imagenes a cargar (-1)
final=img+1 //contador del total de imagenes
inicio=1    //como inicia en el nodo cero asignamos un variable con valor 1
archivo="galeria.xml"
i=0         //iniciamos el número de nodo
System.useCodePage = true; //con esto hacemos que nos respete ñ y acentos
mixml=new XML()
mixml.load(archivo) //aquí mandamos llamar al archivo xml
mixml.ignoreWhite=true
mixml.onload=function(){
   nodos=this.firstChild.childNodes //unificamos en una sola variable los ramas
   
   //la siguiente parte del código es para que nos presente la primera foto
   
   _root["nombre"].text = nodos[i].attributes.galeria; //carga le nombre de la galeria
   _root["imagen"].loadMovie(nodos[i+1].attributes.imagen); //carga la foto
   _root["describe"].text = nodos[i+1].attributes.descrive; //carga la descripción de la foto
   _root["total"].text = "Imagen "+inicio+" de "+final; //indicador actual y total de la imagen
}

//configuración de los botones

sig_btn.onPress=function(){ //cuando es presionado el botón siguiente
   if (i<img) {
      inicio++;   
      i++;
      _root["imagen"].loadMovie(nodos[i+1].attributes.imagen);
      _root["describe"].text = nodos[i+1].attributes.descrive;
      _root["total"].text = "Imagen "+inicio+" de "+final;
   }
}
ant_btn.onPress=function(){
   if (i>0) {
      inicio--;
      i--;
      _root["imagen"].loadMovie(nodos[i+1].attributes.imagen);
      _root["describe"].text = nodos[i+1].attributes.descrive;
      _root["total"].text = "Imagen "+inicio+" de "+final;
   }
}


como notaras éste codigo tiene un contador de imagenes al igual que una descripción de las mismas, si nos las necesitas, pues únicamente tienes que eliminarlas.

El código del xml es el siguiente:

Código :

<datos>
   <dato galeria="Galería Creada con XML"/>
   <dato imagen="/galeria/imagen1.jpg" descrive="Texto de la fotografía 1"/>
   <dato imagen="/galeria/imagen2.jpg" descrive="Texto de la fotografía 2"/>
   <dato imagen="/galeria/imagen3.jpg" descrive="Texto de la fotografía 3"/>
   <dato imagen="/galeria/imagen4.jpg" descrive="Texto de la fotografía 4"/>
   <dato imagen="/galeria/imagen5.jpg" descrive="Texto de la fotografía 5"/>
   <dato imagen="/galeria/imagen6.jpg" descrive="Texto de la fotografía 6"/>
</datos>


tendrías que crear un MC que tenga nombre de instancia "imagen" y un cuadro de texto con nombre de instancia "nombre", otro con el nombre de "describe" y otro que se llame total.

Desafortunadamente yo hoy tengo que salir así que si cualquier duda pues posteala o sino el lunes nos vemos por aca.

Saludos y espero te sea de ayuda.

Por Ereb

Claber

1352 de clabLevel

1 tutorial

Genero:Masculino  

México, D.F.

firefox
Citar            
MensajeEscrito el 03 Feb 2006 11:57 pm
Gracias que te diviertas!!

Por vibet

38 de clabLevel



 

msie
Citar            
MensajeEscrito el 04 Feb 2006 02:20 am
Este es el código que utilizo, es similar al tuyo pero con más funciones, la idea es hacer como en el tutorial que ofrece freddie (galería oop)osea dar una ruta con la que pueda abrir otra página con la imagen que previamente he cargado en mi película. Lo que quiero es mostrar la foto más grande y personalizar la página de apertura, para poder mostrar una descripción.con mi código sólo logro redireccionar la imagen
//FUNCION PARA COMPROBAR SI EL XML HA SIDO CARGADO//
function loadXML(loaded) {
if (loaded) {
//archivo xml cargado
xmlNode = this.firstChild;
image = [];
tit = [];
coment = [];
total = xmlNode.childNodes.length;
for (i=0; i<total; i++) {
image[i] = xmlNode.childNodes[i].childNodes[0].firstChild.nodeValue;
tit[i] = xmlNode.childNodes[i].childNodes[1].firstChild.nodeValue;
coment[i] = xmlNode.childNodes[i].childNodes[2].firstChild.nodeValue;
}
firstImage();
} else {
//archivo xml no cargado
content = "Fichero XML no cargado!";
}
}
//************************************************//
//PRINCIPAL//
xmlData = new XML(); //Nuevo objeto XML
xmlData.ignoreWhite = true; //Ignorar espacios en blanco
xmlData.onLoad = loadXML; //LLamamos a loadXML()
xmlData.load("imagessrust.xml"); //cargamos XML
//*************************************************//
//FUNCION PARA NAVEGAR CON TECLADO//
listen = new Object();
listen.onKeyDown = function() {
if (Key.getCode() == Key.LEFT) {
prevImage();
} else if (Key.getCode() == Key.RIGHT) {
nextImage();
}
};
//************************************************//
//NAVEGACION POR BOTONES//
Key.addListener(listen);
previous_btn.onRelease = function() {
prevImage();
};
next_btn.onRelease = function() {
nextImage();
};
//************************************************//
//PRECARGA DE IMAGENES//
p = 0;
this.onEnterFrame = function() {
filesize = picture.getBytesTotal();
loaded = picture.getBytesLoaded();
preloader._visible = true;
if (loaded != filesize) {
preloader.preload_bar._xscale = 100*loaded/filesize;
} else {
preloader._visible = false;
if (picture._alpha<100) {
picture._alpha += 10;
}
}
};
//**************************************************
//FUNCION AVANZAR IMAGEN//
function nextImage() {
if (p<(total-1)) {
p++;
if (loaded == filesize) {
picture._alpha = 0;
picture.loadMovie(image[p], 1);
tit_txt.text = tit[p];
desc_txt.text = coment[p];
picture_num();
}
}
}
//************************************************//
//FUNCION IMAGEN ANTERIOR//
function prevImage() {
if (p>0) {
p--;
picture._alpha = 0;
picture.loadMovie(image[p], 1);
tit_txt.text = tit[p];
desc_txt.text = coment[p]
picture_num();
}
}
//*************************************************//
//FUNCION QUE CARGA LA PRIMERA IMAGEN//
function firstImage() {
if (loaded == filesize) {
picture._alpha = 0;
picture.loadMovie(image[0], 1);
tit_txt.text = tit[0];
desc_txt.text = coment[0];
picture_num();
}
}
//************************************************//
//FUNCION QUE CONTROLA NUMERACION DE IMAGENES//
function picture_num() {
current_pos = p+1;
pos_txt.text = current_pos+" / "+total;
}
//*************************************************//
//FUNCION PARA DIRECCIONAR A IMAGEN//aquí es donde necesito introducir una nueva funcion con la que abro otra página con la imagen que se está viendo en ese momento........
descripcion = function()
{
getURL(image[p], "_blank");
}
//*************************************************//
ref_btn.onRelease = descripcion;

Por vibet

38 de clabLevel



 

msie

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.