J'ai une configuration à onglets sur la page et je veux automatiquement mettre en surbrillance l'onglet du menu correspondant ainsi que le contenu div affiché en fonction de # hash.jQuery: partie d'une fonction qui ne s'exécute pas
Exemple:
http://design.vitalbmx.com/user_menu/member_profile_so.html - pas de hachage, ouvre son 1er onglet
http://design.vitalbmx.com/user_menu/member_profile_so.html#setup - #setup, devrait ouvrir "Setup" onglet
Comme vous pouvez le voir fonctionne pour mettre en évidence "Setup" languette. Mais le contenu div ne change pas.
Le script est ci-dessous:
var tab_content_current = 1; switch (window.location.hash) { case '#activity': tab_content_current = 1; break; case '#friends': tab_content_current = 2; break; case '#photos': tab_content_current = 3; break; case '#videos': tab_content_current = 4; break; case '#setup': tab_content_current = 5; break; case '#forum': tab_content_current = 6; break; case '#blog': tab_content_current = 7; break; case '#comments': tab_content_current = 8; break; case '#favorites': tab_content_current = 9; break; case '#profile-comments': tab_content_current = 10; break; default: tab_content_current = 1; } if (tab_content_current != 1) { change_active_tab (tab_content_current); } function tabs_toggle (id) { if (id != tab_content_current) { change_active_tab (id); tab_content_current = id; } } function change_active_tab (id) { $j('.profile_tabs li').removeClass('active'); if (id < 8) $j('.profile_tab_'+id).addClass('active'); $j('.profile_content').hide(); $j('#profile_content_'+id).fadeIn(); }
Notez que cela fonctionne lorsque vous cliquez effectivement un onglet de menu.
Toute aide pour résoudre ce problème serait grandement appréciée.
Avez-vous essayé marcher à travers elle dans Firebug pour savoir où ça va mal? – justkt
Modifier les liens pour aller à javascript: void (0) pas void(). Probablement pas le problème ici, mais il apparaît dans firebug – Adam
Non, Firebug ne jette aucune erreur sur ce point. –