2010-03-13 6 views
0

J'ai une page qui utilise jQuery avec un petit pépin.Pourquoi cet élément DOM ne disparaîtra-t-il pas?

j'ai réussi à obtenir cela à un simple exemple qui illustre le problème:

<html> 
<head> 
<script type="text/javascript" src="jquery.js"></script> 
<script type="text/javascript"> 

function hideIt() 
{ 
    $('#hideme').fadeOut('slow', function() { $(this).remove(); }); 
} 

</script> 
</head> 
<body> 
<div id='#hideme'>Hide me!</div> 
<button onclick='hideIt();'>Hide</button> 
</body> 
</html> 

Comme on peut s'y attendre, le problème est simple: la légende ne disparaît pas.

Quelle chose simple ai-je négligé? (Ou si ce n'est pas une chose simple, quelle chose compliquée ne me manque?)

Répondre

6

Essayez de retirer le # à <div id='#hideme'>Hide me!</div> :)

+0

Je suis un idiot :) –

+2

Il est petit truc comme ça où il est si facile d'oublier - il est bon de prêter une nouvelle série d'yeux. –

+0

Merci l'homme. Je me suis tellement habitué à utiliser # pour sélectionner que je l'ai simplement tapé distraitement dans l'attribut id. –

4

Le sélecteur ne trouve pas votre div, parce que vous avez un caractère # dessus:

Change:

<div id='#hideme'>Hide me!</div> 

Pour:

<div id='hideme'>Hide me!</div> 
+0

Merci, mais James vous a battu à la réponse, alors j'ai donné la meilleure réponse à lui. +1 pour le trouver cependant. –

1

L'ID de la div doit être « hideme » non « #hideme »

+0

Ceci est la même chose que ce qui a été mentionné ci-dessus dans les autres réponses. –

Questions connexes