我使用jQuery将一些<th>
和<td>
元素附加到表中的多个行中:
$(selector).filter(function () {
//jQuery finds some cells, evaluates them and generates new cell content
$(this).parent().append('<td>' + FormattedDate + '</td>');
});
//Some code here generates counts
for(var i = column_count; i > header_count; i--) {
$('.result_table tr:first').append("<th>test</th>");
}
然后,我加载应该使整个表可排序的this Greasemonkey script。但是,在我使用jQuery添加单元格之前,Greasemonkey脚本只能对作为表的一部分的列进行排序。如何使其适用于所有列?
答案 0 :(得分:0)
如果不更改Greasemonkey脚本,则无法执行此操作。但是,在这种情况下,它相当容易,因为目标页面只更改了一次表并执行$(document).ready
(名义上为DOMContentLoaded
)。
因此,如果将Greasemonkey脚本设置为在窗口load
运行,那么它将在修改表后运行。
对于this particular script,只需更改最后一行:
var allTables = window.document.documentElement.getElementsByTagName ("TABLE");
CODEBOX.forEach (allTables, function (table){
CODEBOX.tabsorter.processTable (table);
} );
要:
window.addEventListener ("load", function () {
var allTables = window.document.documentElement.getElementsByTagName ("TABLE");
CODEBOX.forEach (allTables, function (table){
CODEBOX.tabsorter.processTable (table);
} );
} );