Javascript 更改隐藏div的滚动条

Javascript 更改隐藏div的滚动条,javascript,jquery,scroll,hidden,Javascript,Jquery,Scroll,Hidden,我有一个固定高度的隐藏div和一个滚动条。我想更改滚动位置,但浏览器不会让我这样做,因为div是隐藏的。 scrollTop属性将保持为0 另外,我不想显示和隐藏div back,这会导致闪烁 如果有人知道怎么做,那真的很有帮助 谢谢 为了防止div闪烁并修复脚本的不可用性,您可以使用位置隐藏而不是“display:none;”“: 您可以使用jQuery的数据功能保存滚动条 function SaveScroll(val) { $(the_element).data("Scroll",

我有一个固定高度的隐藏div和一个滚动条。我想更改滚动位置,但浏览器不会让我这样做,因为div是隐藏的。 scrollTop属性将保持为0

另外,我不想显示和隐藏div back,这会导致闪烁

如果有人知道怎么做,那真的很有帮助


谢谢

为了防止div闪烁并修复脚本的不可用性,您可以使用位置隐藏而不是
“display:none;”“


您可以使用jQuery的数据功能保存滚动条

function SaveScroll(val)
{
    $(the_element).data("Scroll", val);
}

function Show()
{
    var element = $(the_element);

    // prevent from showing while scrolling
    element.css
    ({
        position: "absolute",
        top: "-50000px",
        left: "-50000px",
        display: ""
    });

    // Scroll to the position set when it was hidden
    element.scrollTop(element.data("Scroll"));

    // show the element
    element.css
    ({
        position: "",
        top: "",
        left: ""
    });
}
这可能会奏效



您可能只需要使用
可见性:隐藏
而不是
显示:无
。可见性使图元保持在其所在的位置。我相信它与不透明性:0完全相同,但它是一个跨浏览器的解决方案。

我的问题不完整。该div不是单独隐藏的。它是容器div的一部分,它是隐藏的。内部div与其父级一起显示

<div class="container hidden">
    <div id="some_div">Content</div>
    <div id="my_div">I wanted to scroll this one</div>
    <div id="other_div">Content</div>
</div>
绑定show事件时,它会将类
.onShow
添加到div.,并且已重写
jQuery.fn.show()
函数,以在具有
.onShow
类的孩子上触发“show”事件


谢谢大家的建议。很抱歉,我提供了一个不完整的问题。下次我会提供所有详细信息。

在取消隐藏时,您不能更改滚动位置吗?这是我找到的最佳解决方案。我只是将scrollTop()函数从关闭函数移到打开函数,而不是事件。
<div class="container hidden">
    <div id="some_div">Content</div>
    <div id="my_div">I wanted to scroll this one</div>
    <div id="other_div">Content</div>
</div>
$('#my_div').bind('show', function() {
    handle_scrollTopOffset();
});