2010-03-12 3 views
0

Je travaille dans le contexte d'un système de gestion de contenu et j'essaie de transformer des div séparés en onglets. Vous pouvez le voir au http://www.wtvynews4.com/test J'ai rassemblé du code à partir d'un site de tutoriel.Le script jQuery fonctionne dans Firefox mais pas dans IE. Pourquoi je ne suis pas surpris?

<script charset="utf-8" type="text/javascript"> 
jQuery(function() { 

//When page loads... 
$("div[ondblclick$='87119417']").attr("id", "87119417"); 
$("div[ondblclick$='87119482']").attr("id", "87119482"); 
$("div[ondblclick$='87119672']").attr("id", "87119672"); 
$("div[ondblclick$='87119727']").attr("id", "87119727"); 
$("div[ondblclick$='87119812']").attr("id", "87119812"); 
$("div[ondblclick$='87119417']").addClass("tab_content"); 
$("div[ondblclick$='87119482']").addClass("tab_content"); 
$("div[ondblclick$='87119672']").addClass("tab_content"); 
$("div[ondblclick$='87119727']").addClass("tab_content"); 
$("div[ondblclick$='87119812']").addClass("tab_content"); 

$(".tab_content").hide(); //Hide all content 
$("ul.morenewstabs li:first").addClass("active").show(); //Activate first tab 
$(".tab_content:first").show(); //Show first tab content 

//On Click Event 
$("ul.morenewstabs li").click(function() { 

    $("ul.morenewstabs li").removeClass("active"); //Remove any "active" class 
    $(this).addClass("active"); //Add "active" class to selected tab 
    $(".tab_content").hide(); //Hide all tab content 

    var activeTab = $(this).find("a").attr("href"); //Find the href attribute value to identify the active tab + content 
    $(activeTab).show(); //Fade in the active ID content 
    return false; 
}); 

}); 
</script> 

Tout fonctionne très bien dans Firefox mais pas IE. pouvez-vous fournir de l'aide? Lorsque la page charge les ID d'attribut et que les classes ne sont pas affectées. J'ai essayé de changer jQuery (function() {à $ (document) .ready (function() toujours pas de chance

+0

Pourquoi ne pas réduire à seulement quelques appels jQuery à éliminer le problème. Après avoir reçu un appel au travail, ajoutez-en un autre lentement au lieu d'essayer un énorme tas à la fois. Vous donnez beaucoup de code mais pas beaucoup d'informations qui vous aideront à trouver le problème. – Gabe

+0

Essayez un 'alert ($ (" div [ondblclick $ = '87119417'] "). Length);' Qu'est-ce que IE show? –

+0

renvoie 0 afin qu'il ne puisse pas trouver l'objet référencé. –

Répondre

0

D'un très quick search, il pourrait être quelque chose faire avec l'attribut charset à votre balise de script. et voir si cela aide. Si elle le fait, et vous avez besoin de soutien UTF-8, il y a other options.

+0

Fonctionne toujours dans Firefox ... pas dans IE –

+0

Décomposez-le à un seul élément et supprimez tous vos éléments onclick. Rapportez-le à l'ajout d'une classe. Ensuite, ajoutez une ligne à la fois jusqu'à ce que vous voyiez quelle ligne ne fonctionne pas, alors nous pouvons partir de là. –

0

I figured it out. IE recherche attributs sensible à la casse. de plus, il ne semble pas reconnaître [attrib$="value"] sélecteurs. Au lieu de cela je devais utiliser [attrib*="value"] Merci pour l'aide de tout le monde

+0

marquer cette réponse comme acceptée –

Questions connexes