Skip to content

Commit f9b68cd

Browse files
committed
use more specific selector for on this page component
1 parent 15f39b2 commit f9b68cd

File tree

1 file changed

+15
-5
lines changed

1 file changed

+15
-5
lines changed

src/js/02-on-this-page.js

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,21 @@
77
var levels = parseInt(sidebar.dataset.levels || 2)
88
if (levels < 0) return
99

10-
var article = document.querySelector('article.doc')
11-
var headings
12-
var headingSelector = []
13-
for (var l = 0; l <= levels; l++) headingSelector.push(l ? '.sect' + l + '>h' + (l + 1) + '[id]' : 'h1[id].sect0')
14-
if (!(headings = find(headingSelector.join(','), article)).length) return sidebar.parentNode.removeChild(sidebar)
10+
var articleSelector = 'article.doc'
11+
var article = document.querySelector(articleSelector)
12+
var headingsSelector = []
13+
for (var level = 0; level <= levels; level++) {
14+
var headingSelector = [articleSelector]
15+
if (level) {
16+
for (var l = 1; l <= level; l++) headingSelector.push((l === 2 ? '.sectionbody>' : '') + '.sect' + l)
17+
headingSelector.push('h' + (level + 1) + '[id]')
18+
} else {
19+
headingSelector.push('h1[id].sect0')
20+
}
21+
headingsSelector.push(headingSelector.join('>'))
22+
}
23+
var headings = find(headingsSelector.join(','), article.parentNode)
24+
if (!headings.length) return sidebar.parentNode.removeChild(sidebar)
1525

1626
var lastActiveFragment
1727
var links = {}

0 commit comments

Comments
 (0)