语法
js
scroll()
参数
无。
返回值
无 (undefined)。
异常
InvalidStateErrorDOMException-
如果当前
Document尚未激活,或者导航已被取消,则会抛出此异常。 SecurityErrorDOMException-
如果事件是由
dispatchEvent()调用而非用户代理触发的,则会抛出此异常。
示例
使用 scroll() 处理滚动
在此拦截导航的示例中,handler() 函数首先获取并渲染一些文章内容,然后稍后获取并渲染一些次要内容。在次要内容也渲染完成之前,将页面滚动到主要文章内容区域,以便用户可以与之交互,这是有意义的。为了实现这一点,我们在两者之间添加了一个 scroll() 调用。
js
navigation.addEventListener("navigate", (event) => {
if (shouldNotIntercept(navigateEvent)) {
return;
}
const url = new URL(event.destination.url);
if (url.pathname.startsWith("/articles/")) {
event.intercept({
async handler() {
const articleContent = await getArticleContent(url.pathname);
renderArticlePage(articleContent);
event.scroll();
const secondaryContent = await getSecondaryContent(url.pathname);
addSecondaryContent(secondaryContent);
},
});
}
});
规范
| 规范 |
|---|
| HTML # dom-navigateevent-scroll-dev |
浏览器兼容性
加载中…