在Javascript中,window.open()
方法用于打开一个新的浏览器窗口。然而,它不能直接保持滚动位置。要在window.open()
中保持滚动位置,您需要在打开新窗口时将滚动位置作为参数传递。
以下是一个示例代码,展示了如何在打开新窗口时保持滚动位置:
function openWindowWithScrollPosition() {
const scrollX = window.scrollX;
const scrollY = window.scrollY;
const newWindow = window.open('https://www.example.com', '_blank');
newWindow.onload = function() {
newWindow.scrollTo(scrollX, scrollY);
};
}
在这个示例中,我们首先获取当前窗口的滚动位置(scrollX
和scrollY
),然后使用window.open()
打开一个新的窗口。接着,我们在新窗口加载完成后,使用newWindow.scrollTo(scrollX, scrollY)
将滚动位置设置为与原始窗口相同的位置。
需要注意的是,由于浏览器的安全策略,有时在新窗口中设置滚动位置可能会受到限制。在这种情况下,您可能需要考虑使用其他方法来实现类似的功能,例如在新窗口中使用锚点或者通过其他方式传递滚动位置。
没有搜到相关的文章