jQuery MiniUI

标题: 关于scrollIntoView的问题 [打印本页]

作者: kingannly    时间: 2014-4-3 23:50:12     标题: 关于scrollIntoView的问题

怎么在虚拟滚动下,以下代码为什么滚动不到该节点?该节点还是在不可见区域
function FindTreeContent() {
        var nodes = tree.getAllChildNodes();
        if (nodes != null) {
            tree.selectNode(nodes[23]);
            tree.scrollIntoView(nodes[23]);
        }
    }
作者: factory    时间: 2014-4-4 09:29:27

测试过了
datagrid还是treegrid,虚拟滚动下,scrollIntoView(row)都是正常滚到row行的

如果你那边不行,更新下miniui
作者: kingannly    时间: 2014-4-4 10:20:03

factory 发表于 2014-4-4 09:29
测试过了
datagrid还是treegrid,虚拟滚动下,scrollIntoView(row)都是正常滚到row行的

scrollIntoView(row)的row是什么?我看api是scrollIntoView(node)
作者: factory    时间: 2014-4-4 10:21:03

kingannly 发表于 2014-4-4 10:20
scrollIntoView(row)的row是什么?我看api是scrollIntoView(node)

一样,表格是row, treegrid和tree就是node.节点,也就是指一行数据
作者: kingannly    时间: 2014-4-4 10:46:25

factory 发表于 2014-4-4 10:21
一样,表格是row, treegrid和tree就是node.节点,也就是指一行数据

那我执行了tree.selectNode(node);之后,要滚动到选中的行,怎么写?用虚拟滚动,当被选中的行不在可是区域时,有些数据用$(".mini-grid-row-selected")[0]娶不到tr的dom对象
作者: factory    时间: 2014-4-4 11:30:09

kingannly 发表于 2014-4-4 10:46
那我执行了tree.selectNode(node);之后,要滚动到选中的行,怎么写?用虚拟滚动,当被选中的行不在可是区 ...

你干嘛要获取dom对象?

你把你要滚动到的数据对象给到scrollIntoView()就好了啊

比如你要滚到第66条
var node = tree.getNode(65);

tree.scrollIntoView(node)
作者: kingannly    时间: 2014-4-4 14:33:24

factory 发表于 2014-4-4 11:30
你干嘛要获取dom对象?

你把你要滚动到的数据对象给到scrollIntoView()就好了啊

还不行,我的miniui.js是2014年1月份更新的3.3版,我现在用自己写的方法实行了
作者: factory    时间: 2014-4-4 15:16:56

kingannly 发表于 2014-4-4 14:33
还不行,我的miniui.js是2014年1月份更新的3.3版,我现在用自己写的方法实行了 ...

可以的,我测试过了

你可以试试我上面的代码,获取第N条数据,然后scrollIntoView(这条数据)




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2