你好。说说这个情况。使用带有按钮的 jquery Datatables 将表格导出到 png。处理程序代码:
$( ".export" ).clone().appendTo( ".table_to_export" );
html2canvas($(".table_to_export"),
{
onrendered: function (canvas) {
var a = $("<a>").attr("href", canvas.toDataURL('image/png'))
.attr("download", "Экспорт таблицы.png")
.appendTo("body");
a[0].click();
a.remove();
}
});
$(".table_to_export").html("");
但是,需要删除最后一列。jquery 数据表支持这一点。添加到处理程序
table.column( 7 ).visible( false );
一切都被妥善隐藏。但是 html2canvas 给出了以下结果:
可能是什么问题呢?我试图更改文本表格的样式 - 没有任何意义,文本也无法正确显示。从厄运中删除列或将其隐藏。


问题解决了。一切都变得非常简单。出于某种原因,Datatables 将排序按钮的样式应用于错误的表格元素。结果,不透明度为 0.5。解决方案选项:
ordering: false我不完全明白这里发生了什么,但这就是问题所在。