2010-01-16 8 views
0

je un div qui est caché et être déclaré ainsi:Marque div apparaissent avec jQuery

<div id="divLogin" style="visibility:hidden;"> 

Mon idée est d'utiliser jquery pour le faire glisser dans

donc je créé ce code:

$("btEnviarAcesso").click(function() 
{ 
    $("divLogin").slideToggle("slow"); 
}); 

mais ça ne marche pas ... Est-ce que quelqu'un a des idées pourquoi?

Répondre

10

Vous utilisez visibility:hidden pour masquer le div mais les fonctions de show jQuery ne sont pas ajustées visibility. Je vous conseille de faire ceci:

<div id="divLogin" style="display: none"> 

Et puis changer votre code à ceci:

$("#btEnviarAcesso").click(function() { 
    $("#divLogin").slideToggle("slow"); 
}); 

Cela suppose un élément avec l'ID de btEnviarAcesso qui peut prendre l'événement click.

EDIT: Assurez-vous que vous mettez ce code dans une fonction document.ready:

$(document).ready(function(){ // Or $(function(){ ... 
    $("#btEnviarAcesso").click(function() { 
     $("#divLogin").slideToggle("slow"); 
    }); 
}); 

Vous pouvez voir cette solution de travail en this demo.

Edit 2

Remplacer ceci:

<script src="jquery-1.3.2.min.js"/> 
<script language="javascript"> 

Avec ceci:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> 
<script type="text/javascript"> 
+1

Ceci est probablement le problème, pas simplement j Il a oublié d'utiliser le sélecteur d'identifiant. +1! –

+0

qui était une approche excelente, mais ne fonctionne toujours pas: S – Killercode

+0

@Killercode J'ai mis à jour ma réponse et ajouté une démo. Vérifiez la source de la démo ici: http://jsbin.com/oloxo/edit pour voir où votre code pourrait différer du mien. Cliquez sur "Sortie" pour tester le fonctionnement de mon code. Est ce que ça aide? –

1

Vous avez besoin d'un signe dièse (#) pour identifier les choses par leur attribut id, qui utilise le id selector. Essayez ceci:

$("#btEnviarAcesso")... 

et:

... { $("#divLogin").slideToggle("slow"); }); 

En outre, les fonctions Afficher/Masquer jQuery n'affectent pas l'attribut visibility. Au lieu de cela, utilisez "display: none" pour le style de votre élément.

+0

ne fonctionne toujours pas ... :( – Killercode

+0

et un lien vers la documentation: http En bref, les sélecteurs de jQuery ressemblent beaucoup aux sélecteurs de css – istruble

0

si vous utilisez ID dans votre HTML, utilisez # dans le nom de la requête:

$("#btEnviarAcesso").click(function() { $("#divLogin").slideToggle("slow"); }); 
0

Votre sélecteur est pas bon, btEnviarAcesso est pas un élément. Il doit probablement être #btEnviarAcesso s'il s'agit d'un id ou d'un .btEnviarAcesso s'il s'agit d'une classe.