Foros del Web » Programando para Internet » Javascript »

instancias multiples para un script.

Estas en el tema de instancias multiples para un script. en el foro de Javascript en Foros del Web. Estoy tratando de implementar este script: http://www.onlinetools.org/tools/domtab.php para una pagina. lo que hace el script es tomar los links dentro de la clase "mainnav" y ...
  #1 (permalink)  
Antiguo 25/01/2005, 08:26
Avatar de kemie  
Fecha de Ingreso: junio-2003
Ubicación: estocolmo<-->mexico
Mensajes: 1.627
Antigüedad: 20 años, 10 meses
Puntos: 1
instancias multiples para un script.

Estoy tratando de implementar este script:
http://www.onlinetools.org/tools/domtab.php

para una pagina. lo que hace el script es tomar los links dentro de la clase "mainnav" y hacer monada y media con ellos

Lo que me gustaria es poder definir varias clases a las que se pudiera aplicar la funcionalidad. (en un array? no se mucho de js :S)

aqui esta el .js:
http://www.onlinetools.org/tools/domtabdata/domtab.js

alguien me puede ayudar si es posible hacerlo sin reescribir todo el script??

gracias
__________________
::::::::::::::::::::::::::::: WebHostNinja | diseñorama.com::::::::::::::::::::::::::::::
  #2 (permalink)  
Antiguo 25/01/2005, 10:50
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
En principio es un id mainnav .... qué idea tienes, tener distintos id para hacer lo mismo?
  #3 (permalink)  
Antiguo 25/01/2005, 10:53
Avatar de kemie  
Fecha de Ingreso: junio-2003
Ubicación: estocolmo<-->mexico
Mensajes: 1.627
Antigüedad: 20 años, 10 meses
Puntos: 1
si, exacto, de alguna manera poder modificarlo para que pudiera correr el script en los elementos con id "mainnav", "mainnav1", "mainnav2" y "mainnav3"

vaya, inventandome una sintaxis
// change if you have another main navigation ids for tabbed or normal element id
var navElement='mainnav', 'mainnav1';


me explico?
__________________
::::::::::::::::::::::::::::: WebHostNinja | diseñorama.com::::::::::::::::::::::::::::::
  #4 (permalink)  
Antiguo 25/01/2005, 10:57
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Voy a ver ... aunque no sé si obtendrás los resultados que esperas, yá te digo ...
  #5 (permalink)  
Antiguo 25/01/2005, 10:58
Avatar de kemie  
Fecha de Ingreso: junio-2003
Ubicación: estocolmo<-->mexico
Mensajes: 1.627
Antigüedad: 20 años, 10 meses
Puntos: 1


Se agradece mucho el esfuerzo :)
__________________
::::::::::::::::::::::::::::: WebHostNinja | diseñorama.com::::::::::::::::::::::::::::::
  #6 (permalink)  
Antiguo 25/01/2005, 11:39
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Necesitaría algunos datos más .... pues no sé si el comportamiento que le está quedando es lo que pretendes, a ver si tengo que modificar otras cosas.

El script hace uso de un id y de una clase;

Si se pone más de un id lo que hace es repetir el proceso, es decir, busca otro id y hace lo mismo que con el primero. Como los atributos css se le aplican mediante una clase, también lo puse con un array de clases.

Estoy probando con dos id, lo que hace es generar otro grupo igual debajo del primero. Por defecto carga uno de los div de cada grupo, el primero (la primera pestaña está visible) pero lo hace en los dos grupos creados. Pero claro, luego el funcionamiento de los clicks los trabaja como un sólo grupo.

La pregunta es, si quieres que trabaje como un grupo o como cada grupo de forma independiente, o no es tu idea la de tener varios grupos

no sé si logré explicarme...
  #7 (permalink)  
Antiguo 25/01/2005, 12:10
Avatar de kemie  
Fecha de Ingreso: junio-2003
Ubicación: estocolmo<-->mexico
Mensajes: 1.627
Antigüedad: 20 años, 10 meses
Puntos: 1
cada uno independiente, es decir, cada uno debera de tener su pestaña activa, que no se afecte si en otro grupo se hace clic en una pestaña. Seria maravilloso si pudiera especificar una clase para cada id (es decir, mainnav-->tabon, mainnav2-->tabon2), pero esto no es escencial, porque puedo manejar los estilos de otra manera.

Ahora YO no se si logre explicarme, pero MIL gracias tunait :) :) :)
__________________
::::::::::::::::::::::::::::: WebHostNinja | diseñorama.com::::::::::::::::::::::::::::::
  #8 (permalink)  
Antiguo 25/01/2005, 12:19
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Ah, entonces al cargar antes de tocar nada, cada grupo muestra la primera pestaña por defecto ¿es así? (osea, con un display block de entrada para la primera capa de cada grupo)
  #9 (permalink)  
Antiguo 25/01/2005, 12:32
Avatar de kemie  
Fecha de Ingreso: junio-2003
Ubicación: estocolmo<-->mexico
Mensajes: 1.627
Antigüedad: 20 años, 10 meses
Puntos: 1
si, eso seria lo ideal. estoy pidiendo mucho? porque si es muy complicado, tal vez la solucion mas sencilla es simplemente tener el script varias veces con funciones que tengan distintos nombres....
__________________
::::::::::::::::::::::::::::: WebHostNinja | diseñorama.com::::::::::::::::::::::::::::::
  #10 (permalink)  
Antiguo 25/01/2005, 13:53
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Bueno pues yá está, no sé si sería esto lo que querías.

Te dejo un archivo adjunto con lo que he trabajado.

Lleva dentro todo, el js y los css.

Verás que algunos estilos están duplicados con el mismo nombre más un número correlativo.

Para los id y las clases usa estos arrays

var navElement= new Array('mainnav','mainnav1','mainnav2');
var navElementTabbedId=new Array('mainnavtabbed','mainnavtabbed1','mainnavtab bed2');

Creo que no necesita mucha explicación, estúdiatelo un poco y cualquier cosa me preguntas
te lo meto en un zip que no me acepta html el foro este....

Última edición por tunait; 03/11/2005 a las 10:07
  #11 (permalink)  
Antiguo 25/01/2005, 13:59
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
Cita:
Iniciado por kemie
si, eso seria lo ideal. estoy pidiendo mucho? porque si es muy complicado, tal vez la solucion mas sencilla es simplemente tener el script varias veces con funciones que tengan distintos nombres....
Uish, recién leo ahora esta respuesta....

Bueno, lo de duplicar el script no sería del todo efectivo pues usa variables globales y arreglarlo para funcionar así daría el mismo trabajo y usaría mucho código. Mira a ver si te furula como lo he dejado
  #12 (permalink)  
Antiguo 25/01/2005, 14:12
 
Fecha de Ingreso: diciembre-2003
Mensajes: 1.583
Antigüedad: 20 años, 3 meses
Puntos: 13
Quedó "cool" :P

Yo también estuve craneando un rato con el asunto, en la teoría iba bien, pero s eme sobreescribian algunas variables y quedaba la cagá doh!!

Voy a hecharle unam iradita al adjunto para ver en que me estaba equivocando.
__________________
El conocimiento es libre: Movimiento por la Devolución
  #13 (permalink)  
Antiguo 25/01/2005, 14:22
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 8 meses
Puntos: 381
jeje si, el tema era ver cómo discriminar los últimos elementos usados en cada grupo y usarlos al llamar a la función en cada click. Lo que hice fue guardar esos datos en vez de en las variables globales guardarlos dentro de cada grupo de forma individual y pasar el dato en cada llamada a la función
  #14 (permalink)  
Antiguo 25/01/2005, 14:34
Avatar de kemie  
Fecha de Ingreso: junio-2003
Ubicación: estocolmo<-->mexico
Mensajes: 1.627
Antigüedad: 20 años, 10 meses
Puntos: 1
tunaaaaiiiitttt!!!!

es exactamente lo que necesitabaaaaa :D :D :D :D :D

MIIIIL Gracias :)
__________________
::::::::::::::::::::::::::::: WebHostNinja | diseñorama.com::::::::::::::::::::::::::::::
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:04.