• 滚动TreeView滚动条到被选中节点


    原文:http://www.cnblogs.com/micromouse/archive/2008/03/03/1089059.html

        选择TreeView节点,页面回送刷新后,滚动条自动回到TreeView顶部,而不是被选中节点处,使节点在Treeview可视区域可见,可以利用scrollIntoView方法使TreeView中页面刷新后自动定位到被选择节点处,使被选择节点可见,方法如下:

    <!--Treeview定义页面-->
    <body onload="ScrollToSelectNode();">
        。。。。。。
        <div id="divScroll" style="overflow-y:auto;overflow-x:auto;WIDTH: 250px;height:400px;">
            <asp:TreeView ID="tvAssetKind" runat="server" Width="100%" ExpandDepth="1">
            </asp:TreeView>
        </div>
        。。。。。。
    </body>

    <!--JS处理方法-->
    <script language="javascript" type="text/javascript">          
        
    //滚动到选择节点
        function ScrollToSelectNode()
        {
            try
            {
                var elem = document.getElementById('tvAssetKind_SelectedNode');
                if(elem != null )
                {
                    var node = document.getElementById(elem.value);
                    if(node != null)
                    {
                        
    //滚动被选择节点到TreeView顶部
                        node.scrollIntoView();
                        
                        
    //使被选择节点距离TreeView顶部10,使被选择节点可见
                        document.getElementById("divScroll").scrollLeft = 0;
                        document.getElementById("divScroll").scrollTop -= 10;
                    }
                }
            }
            catch(oException)
            {
            }
        }        
    </script>

    scrollTop、scrollLeft、scrollWidth、scrollHeight

    scrollTop 是“卷”起来的高度值,示例:

    <div style="100px;height:100px;background-color:#FF0000;overflow:hidden;" id="p">
        <div style="50px;height:300px;background-color:#0000FF;" id="t">
            如果为 p 设置了 scrollTop,这些内容可能不会完全显示。
        </div>
    </div>

    <script type="text/javascript">
        var p = document.getElementById("p");
        p.scrollTop = 10;
    </script>

    由于为外层元素 p 设置了 scrollTop,所以内层元素会向上卷。
    scrollLeft 也是类似道理。
    我们已经知道 offsetHeight 是自身元素的宽度。
    而 scrollHeight 是内部元素的绝对宽度,包含内部元素的隐藏的部分。
    上述中 p 的 scrollHeight 为 300,而 p 的 offsetHeight 为 100。
    scrollWidth 也是类似道理。

  • 相关阅读:
    甲骨文严查Java授权 、 openJDK 注意避坑
    evo工具评估slam算法生成的轨迹tum数据集
    领域驱动设计2编码规范
    领域驱动设计1整体代码设计
    XAMPP中phpmyadmin“无法连接:无效的设置”
    在ASP.NET Core Web API中使用SuperSocket.WebSocket.Server
    EFCore启用数据库连接池
    Kafka的Rebalance机制可能造成的影响及解决方案
    kafka如何保证数据的消息不丢失(最简洁)
    callable与future
  • 原文地址:https://www.cnblogs.com/vagerent/p/1338275.html
Copyright © 2020-2023  润新知