jQuery动画滚动不起作用

时间:2014-11-23 15:27:34

标签: javascript scriptmanager

我需要将视角滚动到新添加的文本框。

ScriptManager.RegisterStartupScript(Page, Page.GetType(), "ScrollTo" + ClientId, "jQuery(function(){$('html, body').delay(2000).animate({ scrollTop: $(document.getElementById(\"" + ClientId + "\")).offset().top },2000);});", true);    

但它不起作用。 我在网页浏览器中看不到任何错误。

ScriptManager.RegisterStartupScript(Page, Page.GetType(), "ScrollTo" + ClientId, "document.getElementById(\"" + ClientId + "\").scrollIntoView(true);", true);    

此代码运行良好,但它不是动画滚动。

1 个答案:

答案 0 :(得分:0)

试试这段代码:

string javascript=@"
jQuery(document).ready(function(){
    jQuery('html, body')
        .delay(2000)
        .animate(
            {
                'scrollTop': jQuery('#"+ ClientId +@"').offset().top + 'px'
            },
            2000);
});
"

并按照以下方式注册:

ScriptManager.RegisterStartupScript
(
    Page,
    Page.GetType(),
    "ScrollTo" + ClientId,
    javascript,true
);