我有以下代码
$.fn.dataTableExt.aoFeatures.push({
"fnInit": function (oSettings) {
oSettings.oScroll.sY = 5;
return { "oSettings": oSettings } ;
},
"cFeature": "T"
});
$.extend($.fn.dataTable.defaults, {
//"scrollY": 5,
"dom":"T"
});
我可以看到scrollY在功能上有所更改,但在数据表中没有任何作用,由于我必须将条件ono tableid放在其中,因此如何使用此功能覆盖默认设置,
否则我可以按照下面的方法进行操作
$.extend($.fn.dataTable.defaults, {
"scrollY": 5,
});
我相信我在return语句上缺少某些东西,这些东西会覆盖这些东西
答案 0 :(得分:2)
由于某些原因,您的代码无法使用。首先,您使用的是过时的API。 $.fn.dataTableExt.aoFeatures.push
是$(...).dataTable()
使用的旧API。通过像在小提琴中一样使用$(...).DataTable()
(注意大写的“ D”),您可以选择使用新的API。 (了解有关使用旧API转换代码以使用新API here的信息。)使用当前API是一个不错的选择,但是您需要使用$.fn.dataTable.ext.feature.push
来设置功能。</ p >
这有效:
$.fn.dataTable.ext.feature.push({
"fnInit": function (settings) {
settings.oScroll.sY = 25;
},
"cFeature": "T"
});
但是,dom
feature旨在指示表中元素的顺序。可以使用它来设置scrollY
之类的样式,但这并不完全符合他们的想法。关键是,如果要完全指定dom
,则必须指定所需的所有元素。特别是,您必须为表指定t
,否则DataTable根本不会将自身附加到表。因此,您需要使用类似这样的设置表来触发您的scrollY
“功能”:
$(document).ready(function() {
var table = $('#example').DataTable({
"dom":"Tlftip"
});
请注意顺序很重要。 “ T”必须位于受功能更改所影响的其他元素之前。 "dom":"lftipT"
不会达到预期的效果。