【发布时间】:2009-10-17 17:30:14
【问题描述】:
我在这个测试页面上有一个 Wordpress/jQuery 插件的工作示例:http://beerlyrics.com/jimmy-jones/
我将它硬编码到此页面的标题中,并且分页和过滤机制都可以正常工作。
我已将其转换为新页面,现在正在使用 wp_enqueue 调用我的所有脚本,因为它应该完成: http://farmball.com/boston/boston-red-sox/red-sox-roster/
为什么分页和过滤机制不再起作用?
我已确认这与 Firebug 中出现的 #baseball-table not defined 错误和audiplayer 错误无关。 #baseball-table 错误发生在两个站点上,我停用了导致音频播放器错误的插件,它对插件性能没有影响。
这里是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
}); });
【问题讨论】:
-
我不确定是什么导致了这个问题——这两个例子在 Chrome 中都不适合我。虽然它在 IE 8 中工作,但它抛出一个错误网页错误详细信息消息:预期函数行:15 字符:6 代码:0 URI:beerlyrics.com/wp-content/themes/classic/tablesorter_filter.js
-
是的,Wordpress 说要以这种方式加载 js 文件,但它完全破坏了插件,所以我不得不将该行改回 function($)。在另一个网站上,如果我硬编码到标题中,我可以加载它,但我试图弄清楚为什么它不会使用“正确”方式加载(不是硬编码,而是使用 wp_enqueue)。
-
开发人员将输入框移到了表格之外,这破坏了 Chrome(可能还有 Safari)中的解析器。
标签: javascript jquery wordpress tablesorter