2009-10-17 6 views
0

J'ai un exemple de travail de Wordpress/plugin jQuery sur cette page de test: http://beerlyrics.com/jimmy-jones/Pourquoi le plugin jQuery Tablesorter ne fonctionne-t-il pas sur cette page Wordpress?

Je Hardcoded dans l'en-tête sur cette page et à la fois les mécanismes de pagination et de filtrage fonctionnent correctement.

J'ai converti ce vers une nouvelle page et je suis maintenant en utilisant wp_enqueue pour appeler tous mes scripts comme il est censé faire: http://farmball.com/boston/boston-red-sox/red-sox-roster/

Pourquoi ne pas les mécanismes de filtrage et ne pagination travailler plus longtemps?

J'ai confirmé que cela n'avait rien à voir avec une erreur de # baseball-table non définie et une erreur audiplayer qui apparaît dans Firebug. L'erreur de # baseball-table se produit sur les deux sites et j'ai désactivé le plugin provoquant l'erreur de l'audiopleur et cela n'a fait aucune différence pour les performances du plugin.

Voici le code pour l'initialisation de js:

jQuery(document).ready(function($) { 
     $("#baseball-table").tablesorter({ debug: false, sortList: [[0, 0]], widgets: ['zebra'] }) 
        .tablesorterPager({ container: $("#pager"), positionFixed: false }) 
        .tablesorterFilter({ filterContainer: $("#filter-box"), 
         filterClearContainer: $("#filter-clear-button"), 
         filterColumns: [0, 1, 2, 3, 4, 5, 6, 7, 8], 
         filterCaseSensitive: false 
        }); }); 
+0

Je ne suis pas sûr de ce qui cause le problème - Ni l'un ni l'autre ne fonctionne pour moi dans Chrome Bien qu'il fonctionne dans IE 8, il lance une erreur Détails de l'erreur de la page Web Message: Fonction attendue Ligne: 15 Char: 6 URI: http://beerlyrics.com/wp-content/themes/classic/tablesorter_filter.js –

+0

Oui, Wordpress dit de charger les fichiers js de cette manière, mais il a complètement cass retour à la fonction ($). Sur l'autre site, je peux le charger si je hardcode int o l'en-tête mais j'essaie de comprendre pourquoi il ne se chargera pas en utilisant le "bon" moyen (pas le coder en dur mais en utilisant wp_enqueue). – Adam

+0

Le développeur a déplacé la zone de saisie à l'extérieur de la table qui était en train de casser l'analyseur dans Chrome (et peut-être Safari). – Adam

Répondre

0
+0

La bibliothèque jQuery fournie avec Wordpress est chargée en mode "sans conflit". Pour utiliser la fonction $ comme d'habitude, utilisez ce qui suit: jQuery (document) .ready (function ($) { // $() fonctionnera comme un alias pour jQuery() à l'intérieur de cette fonction }) ; Malheureusement, cela a provoqué la rupture de l'ensemble, donc j'ai dû revenir à la fonction ($) { Je me sens assez proche ... – Adam

0

J'embauché un développeur pour résoudre ce problème. Etrange mais le correctif était qu'il manquait un fichier (au début de l'un des fichiers js dans FTP bien que cPanel l'ait montré au début du fichier.) J'utilise cPanel et je ne savais pas qu'il était manquant

Questions connexes