如何在页面加载时保持div的滚动位置

时间:2012-06-01 03:46:11

标签: asp.net scroll asprepeater

有没有办法在页面加载时向下滚动到特定的div?我有100多行,所以当页面加载时我会根据某些条件突出显示div背景,所以同样的方式是可以定位到特定的div?

我正在使用转发器

<asp:Repeater EnableViewState="true" ID="rpt" runat="server" OnItemDataBound="rpt_ItemDataBound">       
        <ItemTemplate>
            <div style='padding: 10px;' id="mydiv"  runat="server">
                <div>
                    <asp:Label runat="server" ID="lblName" Text='<%# Eval("Name") %>'> </asp:Label>
                </div>  
            </div>
        </ItemTemplate> 
    </asp:Repeater> 

protected void rpt_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
   if (......)
         mydiv.Attributes.Add("class", "selected_div");
}

2 个答案:

答案 0 :(得分:0)

使用div的tabindex属性。使用tab-index设置div的焦点。

点击此链接:Set keyboard focus to a <div>

答案 1 :(得分:0)

如果您正在使用jquery,则可以使用页面的ready函数中的scrollTo插件,使用“selected_div”类作为选择器。 如:

$(document).ready(function() {
  $(document).scrollTo('.selected_div');
} 

如果没有jquery,您可以在div元素上使用标准的javascript函数.scrollIntoView(true)。但是,您必须先找到该元素,才能调用该函数。

两者的组合也是有效的。使用jquery使用类选择器和调用.scrollIntoView(true)的元素找到所选的div。