scrollTop无法自动运行

时间:2015-06-02 06:47:43

标签: javascript jquery

我知道有一些问题要滚动到那里,但我还没有真正看到类似我的问题。

在IE9上使用jquery 1.7.2,我们有一个带有三个Tabs(JqueryUI)的页面。 数据已连接,导致我们只在页面上显示当前选项卡。更改标签将删除看不见的标签并重新加载我们跳入的标签。

滚动位置正确存储在基页上的变量中,但尝试在文档就绪函数中设置该位置不起作用。 警报显示正确的数字,因此实际调用该函数但滚动条不移动。

之后使用页面上的按钮调用相同的功能然而效果很好。 选项卡的jsp上的文档就绪函数非常简单:

<script type="text/javascript">
jQuery(document).ready(function(){
    setAhaScrollbar();
});

</script>

并且被调用的函数也很简单:

function setAhaScrollbar() {
    var scrollWert = $('#scrollbarAnhaengeartikel').val();
    alert(scrollWert);
    $('#anhaengeGridScrollable').scrollTop(scrollWert); 
}

从文档准备调用它什么都不做。稍后从按钮调用它可以正常工作。

应该设置滚动位置的div用overflow:auto和固定高度

定义

2 个答案:

答案 0 :(得分:0)

  

crollTop(value)
  说明:为每组匹配元素设置滚动条的当前垂直位置   .scrollTop(value)
  值
  类型:数字   一个整数,指示将滚动条设置为的新位置。

More Information
由于documentation表示的值应为数字 试试

var scrollWert = Number($('#scrollbarAnhaengeartikel').val()); 

var scrollWert = parseInt($('#scrollbarAnhaengeartikel').val());

答案 1 :(得分:0)

显然这主要是时间问题。当文件准备就绪时,可能仍有事情发生。

将该功能更改为

jQuery(document).ready(function(){
    setTimeout("setAhaScrollbar()", 500);
});

做了这个伎俩,所以问题解决了。