Javascript 在onload页面中选择一个div

Javascript 在onload页面中选择一个div,javascript,google-closure-library,Javascript,Google Closure Library,基本上,页面中某个div的溢出设置为垂直滚动。我希望用户能够在页面加载后立即滚动。要滚动,此时必须先单击该div,然后才能滚动 我怎样才能马上做到这一点?我恳请您不要使用document.location.hash方法,因为出于某种原因,这似乎会在页面中造成一些其他问题 如果查看页面,可滚动的div是mainView 嗯,你可以用。它甚至似乎得到了IE9、Chrome和Firefox的良好支持。IE8/7我不太确定,因为它无法识别高度:在html、body元素上为100% 例如,这里我将动态创建

基本上,页面中某个div的溢出设置为垂直滚动。我希望用户能够在页面加载后立即滚动。要滚动,此时必须先单击该div,然后才能滚动

我怎样才能马上做到这一点?我恳请您不要使用document.location.hash方法,因为出于某种原因,这似乎会在页面中造成一些其他问题

如果查看页面,可滚动的div是mainView

嗯,你可以用。它甚至似乎得到了IE9、Chrome和Firefox的良好支持。IE8/7我不太确定,因为它无法识别高度:在html、body元素上为100%

例如,这里我将动态创建二十个元素,并将window.scroll设置为div的总高度,而div的总高度应该与document.body高度相同

试一试:

(function load(d) {
    var body = d.body,
        i = 0,
        div,
        winheight = h(),
        scroll = 0;

    (function loop() {
        if (i++ < 20) {
            scroll = scroll + 20 + 100 + 5 + winheight;

            div = document.createElement('div'); 
            div.style.height = winheight - 125 + 'px';
            div.className = 'block';
            div.innerHTML = 'DIV #' + i;

            document.body.appendChild(div);

            window.scroll(0, scroll);

            setTimeout(loop, 2000);
        }
    })();

    function h() {
        return Math.max(
            Math.max(body.scrollHeight, d.documentElement.scrollHeight),
            Math.max(body.offsetHeight, d.documentElement.offsetHeight),
            Math.max(body.clientHeight, d.documentElement.clientHeight)
        );
    }    
})(document);

您使用的浏览器和所述浏览器的版本是什么?我无法复制你的问题。