2010-05-02 9 views
1

J'ai une fonction essayer d'exécuter ceci:jQuery .Find() ne fonctionne pas dans IE

if (action=='fadeIn') { 
    if ($(this).css('position') == "static") { 
    $(this).css({position: 'relative'}); 
    } 
    $(this).append('<span class="bg_fade">') 
} 
var fader = $(this).find('.bg_fade'); 

alert(fader.attr('class')); 

Il fonctionne très bien dans Firefox, mais dans IE, l'alerte undefined. Des idées?

Le code entier est à http://www.jakelauer.com/jquery/bgFade/jquery.bgFade.js

utilisé à jakelauer.com/jquery/bgFade

+0

Où est le code entier? essayez l'exemple ici: http: //api.jquery.com/find/ –

+0

Votre bloc conditionnel s'exécute-t-il dans IE? À partir de cet exemple de code, nous savons comment savoir quelle est votre variable 'action', à quoi elle sert, ce qui la définit, ce que vous essayez de faire, etc. –

+0

Voici le code entier: http: //www.jakelauer. com/jquery/bgFade/jquery.bgFade.js Utilisé à http://www.jakelauer.com/jquery/bgFade/ – Jake

Répondre

3

Il est certainement le fait que le traitement cesse IE sur les erreurs quelque part ailleurs dans le script. Appuyez sur F12 pour afficher les outils de développement, accédez à Script et appuyez sur Démarrer le débogage. Puis rechargez votre page. Vous trouverez votre erreur rapidement.

EDIT: J'ai regardé de plus près. Essayez de fermer votre balise <span> dans votre append. L'append ne part pas dans IE.

+0

Juste essayé ceci, aucun dé. La fenêtre des outils de développement n'a pas changé du tout lors du rechargement ou lorsque j'ai exécuté la fonction. Si quelqu'un est intéressé à tester lui-même, c'est à www.jakelauer.com/jquery/bgFade – Jake

+1

Génial, c'était l'étiquette de portée. Merci! – Jake

+0

J'ai eu un problème où IE ne traiterait pas ''. Je devais y mettre un espace pour qu'il ressemble à ''. De même, IE ne l'aime pas quand vous mettez "Heading Tags" (h2, h3, h4, etc.) Dans un div. –