Comunidad de diseño web y desarrollo en internet online

Me ayudan con este acordion??

Citar            
MensajeEscrito el 22 Jun 2012 05:08 pm
Bueno lo que quiero es que desde la pagina index ahi un link como anchor que redirecciona a otra web con el acordeon y lo que quiero es que se habra cada una de las secciones solo pulsando 6 imagenes q estan en el index me gustaria saber como acerlo

ejemplo:
link1 de pagina index -----> abrir seccion1 del acordeon de pagina soluciones
link2 de pagina index -----> abrir seccion2 del acordeon de pagina soluciones
link3 de pagina index -----> abrir seccion3 del acordeon de pagina soluciones

aqui el acordeon que utilize
http://tympanus.net/Tutorials/CSS3Accordion/

Por Eclypse

Claber

118 de clabLevel



 

firefox
Citar            
MensajeEscrito el 22 Jun 2012 06:49 pm
Que tal aqui eh desarrollado un script que te puede ayudar


var activo="";

$(function(){
$('.boton').click(function() {

if($(activo).attr('id') != ""){

$(activo).next().slideToggle('normal');

};

if($(this).attr('id') == $(activo).attr('id')){

activo="";

}else{

$(this).next().slideToggle('normal');


activo=this;



};

/*direccion=$(this).children().attr('href');

if(direccion!="javascript:void(0)"){
document.location(direccion);
}*/

return false;
});
activarMenu(sec);
})

/*
window.onload=function(){
$("div#mlateral-contenido").height($("div#derecha").height());
}
*/
//////////////////////////////////////////////////////////////////////////////////////
/// para activar el menu de la pagina que estoy viendo
//////////////////////////////////////////////////////////////////////////////////////
function activarMenu(sec){
if(sec!="false"){

$('#'+sec).next().slideToggle('normal');

return $("#"+sec+" .boton");

}
}

ahora el chiste de este script, es que la clase .boton solo lo llevara el div que esta por arriba del div que tiene el contenido a mostrar por ejemplo

<div id="link1" class="boton">Pestaña o btn del acordion</div>
<div id="contenidoLink1">aqui va el contenido de esta pestaña</div>

ahora, lo que tienes que hacer es que desde tu index.html o php, mandes via GET la variable de la seccion asi como el nombre del DIV que necesitas abrir por ejemplo en el caso de que fuera este ya mencionado seria archivo.php?sec=link1 este es el nombre del ID del div que va abrir y lo que haces es crear una variable en javascript de la siguiente manera

<script > var sec = <?php echo $_GET['sec'] ?> </script>

esta variable sec de javascript la vas a leer en la linea del script donde se manda llamar la funcion activarMenu(sec);

ahora si no te quieres complicar tanto la existencia creando esta variable sec hay un script en jquery que descarga directamente a jquery la variable GET con este tutorial de aca

http://jquery-howto.blogspot.mx/2009/09/get-url-parameters-values-with-jquery.html

Por ldgmmorales

Claber

142 de clabLevel

1 tutorial

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 22 Jun 2012 09:22 pm
jaja si te das cuenta mi acordeon es puro css3 como uso ese .slidetoogle?'

Por Eclypse

Claber

118 de clabLevel



 

firefox
Citar            
MensajeEscrito el 22 Jun 2012 09:27 pm
mira si te fijas mi acordeon usa checkbox y trasition , que al hacer click al chekbox se agrega un valor al height de cada article y esta se agranda y se muestra el contenido como le ago q desde otra web el usuario al aser click a una imagen de direcciones a la seccion especifica y qede desplegado esa seccion del acordion

Por Eclypse

Claber

118 de clabLevel



 

firefox
Citar            
MensajeEscrito el 25 Jun 2012 06:28 pm
no pues asi no creo que se pueda la vdd con css jamas eh visto eso... sorry :(

Por ldgmmorales

Claber

142 de clabLevel

1 tutorial

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 26 Jun 2012 06:44 pm
Bueno no importa y creo que ya se le olvidara al gerente eso jejeje.. Pues gracias de todos modos :)

Por Eclypse

Claber

118 de clabLevel



 

firefox
Citar            
MensajeEscrito el 26 Jun 2012 10:13 pm
pero prueba el script que te di no te toma mucho tiempo suerte !

Por ldgmmorales

Claber

142 de clabLevel

1 tutorial

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 05 Jul 2012 04:55 pm
Si pero no entiendo mucho lo que me escribistes bueno

mira esto lo que encontre

este link se supone que envia una variable a la otra pagina
http://dominio/pagina.html?var1=valor1

Me podrias dar el codigo debe como capturar esta variable y utlizarla como aser una condicion para que el checkbox este true ?'

Por Eclypse

Claber

118 de clabLevel



 

firefox
Citar            
MensajeEscrito el 05 Jul 2012 05:47 pm
ahi te va... bien desmunsado,

PASO1:
vas a tener un index.php y un link1.php en los dos archivos vas a tener un <ul> <li>... </ul> con N cantidad de Li que seran tus botones a cada LI tendra en su interior una etiqueta <a> obviamente para hacer el link en el href vas a poner href="link.php?pest=about" y asi sucecivamente en cada etiqueta <a> obvio vas cambiando la palabra about por el nombre de la pestaña que va abrir..

PASO 2:
en el archivo link1.php, vas a crear un <ul> que sera tu acordion ejemplo

<ul>

<li id="about" class="boton"><a href="javascript:void(0)"></a></li>
<li class="contenidoAcordion"> aqui va la informacion a mostrar cuando el acordion se abra</div>

<li id="otraSeccion" class="boton"><a href="javascript:void(0)"></a></li>
<li class="contenidoAcordion"> aqui va la informacion a mostrar cuando el acordion se abra</div>

...

</ul>

NOTA: asegurate que en tu css la clase contenidoAcordion tenga de propiedad display:none; es muy importante esta propiedad

ahi vas poniendo N cantidad de LI y les vas cambiando los ID segun el nombre que hayas usado en el HREF de las etiquetas <A> de tu archivo index (recuerda: href="link.php?pest=about" ).

PASO 3: ( la magia )
primero vas a insertar el archivo jquery que debiste bajar de jquery.com, y meterlo entre tus etiquetas <head> debajo del <tittle> luego, vas a copiar el codigo que te di, esta por demas decirte que va debajo del otro jquery ke insertaste y que va dentro de las etiquetas <script></script> aqui te lo pego de nvo:

//DECLARO PRIMERO UNA VARIABLE PARA SABER CUAL ES EL BOTON AL QUE LE DI CLICK EN EL ACORDION
var activo="";

//FUNCION QUE GUARDA LAS INSTRUCCIONES A EJECUTAR DESPUES DE LA CARGA DEL DOM O SEA CUANDO EL NAVEGADOR TERMINO DE LEER HASTA EL TAG </HTM> REGRESA A ESTA LINEA Y EJECUTA LO DE ADENTRO DE LAS LLAVES

$(function(){


//AQUI DEDCLARO QUE LA CLASE BTN AL HACER CLICK
$('.boton').click(function() {

//CON ATTR() voy a extraer el valor de la id del mismo LI, bien ahora hago una comprobacion si activo es diferente a nada lo que voy hacer es que el next() se ejecutara haciendole un slidetoggle cuando trabajamos con NEXT() se refiere al objeto DEBAJO del objecto al que estamos haciendo click en este caso al <li class="contenidoAcordion"> el SLIDETOGGLE hara que se abra como acordion empujando los otros <li> hacia abajo, pero la primera vez que lo ejecutas este IF no se ejecutara porque activo no vale nada esta vacio.

if($(activo).attr('id') != "")
{
$(activo).next().slideToggle('normal');
};

//Aqui otra comprobación donde le digo que si el id del boton que estoy clickeando es igual al id del valor activo entonces el valor de activo es igual a nada y despues un ELSE sino entonces al objeto debajo de ESTE (this) hazle un slidetoggle.

if($(this).attr('id') == $(activo).attr('id'))
{
activo="";
}
else
{
$(this).next().slideToggle('normal');

//Aqui por ultimo asigno a la variable activo el objecto al que le doy click
activo=this;
};
}

//Mando llamar la funcion que me va abrir la pestaña del acordion que seleccione
activarMenu(currentSec)

}//end DOM

PASO 4:
Bueno pero esto es cuando estas usando el acordion normalmente, ahora vamos con la funcion que va abrir la seccion que seleccionaste en el archivo index.php ya que estamos trabajando sobre el archivo link1.php. Bien ahora lo que necesitamos es crear una variable extra antes de var activo, la vamos a llamar var currentSec, pero aqui es donde vas bajar la variable que enviaste como es PHP tu archivo este lenguaje tiene una forma en recibir las variables que se envian por URL que ese metodo se le conoce como metodo GET entonces quedaria mas o menos asi

var currentSec = <php echo $_GET['pest'] ?> ;

asi nos aseguramos que venga pest y guardamos el valor dentro de una variable de javascript bien ahora viene la segunda parte del codigo la funcion que va hacer que abras la pestaña que selccionaste:

esta funcion la vas a mandar llamar antes de la llave de cierre del DOM o sea una linea antes de esto }//end DOM vas a poner como lo deje indicado arriba.

function activarMenu(sec)
{
//Aqui compruebo que el parametro sec no este vacio y como se que sec va a tener el valor de currentSec y que este a su vez va a tener el nombre del ID de la LI que voy abrir entonces uso sec para decirl que al siguiente objeto en el <li> le haga un slideToggle, no se si el return es necesario o no, jejejeje la vdd no recuerdo creo que no.
if(sec != "")
{

$('#'+sec).next().slideToggle('normal');

// return $("#"+sec+" .boton");

}
}

Bien asi es como funciona mi codigo...

ahora si lo que quieres es ponerle un atributo checked="checked" a un checkbox bien pues entonces tienes que hacer un if con PHP y saber que valor estas mandando ejemplo.

if($_GET['checkBtn']=="about")
{
$atribute= "checked='checked'";
}
else
{
$atribute= "";
}

<input type="checkbox" <?php echo $atribute; ?> />

donde checkBtn es una variable de tipo GET que le estas enviando via URL.

Saludos!

Por ldgmmorales

Claber

142 de clabLevel

1 tutorial

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 06 Jul 2012 10:46 am
Bueno gracias ya encontre una respuesta a mi problema :)

Por Eclypse

Claber

118 de clabLevel



 

firefox

 

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