1

我有一个显示缩略图的 div 页面。每个都被设置为当它被点击时,一个更大的版本会出现在一对更大的 div 中,在窗口的中心。一个是框架,内部的div是图像。这些 div 最初是隐藏的,并通过 javascript 变得可见:

document.getElementById('frame').style.visibility="visible". 
document.getElementById('print').style.visibility="visible". 

它们的大小和居中正好由 javascript 调整,但在后台它会滚动到缩略图页面的顶部,因此当关闭时,用户必须再次向下滚动页面才能回到原来的位置。

我已经尝试在页面的每个可能的位置插入两个 div,在主页 div 的内部和外部,页面的顶部和底部......我还尝试过相对、绝对甚至粘性定位,但没有运气。

因此,当 div 关闭(再次隐藏)时,我追求滚动页面,但无论我使用锚点还是滚动,这也是失败的。在下面的脚本中,如果警报处于活动状态,它会显示页面滚动到背景中的正确位置。一旦警报关闭,它就会跳回页面顶部。'pid' 是目标缩略图的 id。

function hideprint() {
    document.getElementById('print').style.visibility="hidden"; 
    document.getElementById('frame').style.visibility="hidden";
    document.getElementById(pid).scrollIntoView();
    // alert(pid);
}

我也尝试过“显示”而不是“可见性”,结果相同。

如何显示这些 div,然后让页面停留或返回到它们关闭时滚动到的位置?

4

0 回答 0