Conflit de javascript sur un Wordpress
Hello,
Je viens vers vous car le forum de support WP francophone n'a pas de solution � me proposer.
Je suis en train de mettre un WP en place, il utilise le menu de base du CMS (appel� avec la fonction wp_nav_menu() pour ceux qui connaissent), ce menu poss�de �galement des sous-rubriques donc d�roulement des <li> au survol de la souris...
Sur les pages de mes articles, j'ai int�gr� des boutons de partage sur les r�seaux sociaux. Pour cela je n'ai pas utilis� de plugin, je suis all�e chercher le code source des boutons sur les sites des r�seaux.
Les pages internes poss�dent aussi un Widget Twitter qui permet l'affichage de mes X derniers tweets, il s'appelle "Journal Crunch Twitter Widget" (journal crunch �tant le nom de mon th�me WP)
Le bouton Twitter (ou le widget je ne sais pas) me pose probl�me car sur les pages o� les deux sont int�gr�s, le menu d�roulant ne fonctionne plus. Les trois utilisent du javascript.
L'erreur que me retourne la console firebug est la suivante :
Citation:
TypeError: twttr.anywhere is not a function
twttr.anywhere(function(T)
Cette fonction n'est pr�sente ni au niveau du menu, ni du bouton, mais au niveau du code du widget (sur la page jquery.jtweets-1.2.1.js).
Voici l'une des fonctions qui retourne l'erreur (sur les 2) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| if (isAnywherePresent())
{
// if @Anywhere is present, append Hovercards to @username and
// profile images
twttr.anywhere(function(T)
{
T(options._baseSelector + ' .jta-tweet-list').hovercards({expanded: options._tweetFeedConfig.expandHovercards});
T(options._baseSelector + ' .jta-tweet-profile-image img').hovercards(
{
expanded: options._tweetFeedConfig.expandHovercards,
username: function(node) { return node.alt; }
});
T(options._baseSelector + ' .jta-tweet-retweeter-link').hovercards(
{
expanded: options._tweetFeedConfig.expandHovercards,
username: function(node) { return node.text; }
});
T(options._baseSelector + ' .jta-tweet-user-screen-name-link').hovercards(
{
expanded: options._tweetFeedConfig.expandHovercards,
username: function(node) { return node.text; }
});
T(options._baseSelector + ' .jta-tweet-user-full-name-link').hovercards(
{
expanded: options._tweetFeedConfig.expandHovercards,
username: function(node) { return node.name; }
});
});
} |
Et le code du bouton Twitter :
Code:
1 2
| <a href="https://twitter.com/share" class="twitter-share-button" data-via="ameizgeek" data-lang="fr">Tweeter</a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script> |
J'ai test� la d�sactivation de certains �l�ments de ma page pour voir ce qui fonctionne/ce qui ne fonctionne pas.
Menu tout seul = tout fonctionne
Menu + bouton twitter = tout fonctionne
Menu + widget twitter = tout fonctionne
Menu + bouton twitter + widget twitter = le menu ne fonctionne plus
L'id�al serait bien s�r que les trois fonctionnent ensemble :D
Merci