滚动监视高亮当前区域
高亮与当前可见区域对应的目录链接。
可复制的代码
var heads = document.querySelectorAll('h2[id], h3[id]');
if (heads.length && 'IntersectionObserver' in window) {
var obs = new IntersectionObserver(function (entries) {
entries.forEach(function (en) {
if (en.isIntersecting) {
document.querySelectorAll('a[href^="#"]').forEach(function (a) {
var on = a.getAttribute('href') === '#' + en.target.id;
a.style.fontWeight = on ? '700' : '';
a.style.background = on ? '#fff3a8' : '';
});
}
});
}, { rootMargin: '0px 0px -70% 0px' });
heads.forEach(function (h) { obs.observe(h); });
}
如何使用此示例
- 用上方按钮复制代码。
- 安装 JustZix(2 分钟),在目标页面打开扩展。
- 添加一条匹配该页面的新规则。
- 将代码粘贴到规则的 JavaScript 面板并保存 — 每次访问页面时都会运行。
为此示例评分
暂无评分 — 成为第一个。