我是剑道树视图的新手。我们可以自动滚动树视图以获取当前视口中的节点吗?我创建了一个示例来显示问题JSBin Sample
4511 次
1 回答
6
我不确定 treeView 是否有该选项,但您可以为“select”事件创建一个事件处理程序,然后自己处理滚动。
var treeview = $("#tree").kendoTreeView({
select: function(e) {
var eleTop = $(e.node).offset().top;
var treeScrollTop = $("#tree").scrollTop();
var treeTop = $("#tree").offset().top;
$("#tree").animate({
scrollTop: (treeScrollTop + eleTop) - treeTop
});
},
dataSource:[
{ expanded:true, text: "Furniture", items: [
{ text: "Tables & Chairs" },
{ text: "Sofas" },
{ text: "Occasional Furniture" }
] },
{ expanded:true, text: "Decor", items: [
{ text: "Bed Linen" },
{ text: "Curtains & Blinds" },
{ text: "Carpets" }
] }
]
});
var treeview = $("#tree").data("kendoTreeView");
// find the node with text "foo"
var decor = treeview.findByText("Decor");
treeview.select(decor);
treeview.trigger("select", {node: decor});
注意:当您使用treeview api选择一个节点时,该事件不会触发,所以我通过触发器自己触发了它。我在您的垃圾箱中对此进行了测试,并且效果很好。调整它以获得所需的结果。
于 2014-02-26T01:35:37.063 回答