diff --git a/src/core/webidl-index.js b/src/core/webidl-index.js index 5347318018..b55ee3818c 100644 --- a/src/core/webidl-index.js +++ b/src/core/webidl-index.js @@ -54,6 +54,10 @@ export function run(conf, doc, cb) { collector.appendChild(elem); return collector; }, pre); + // Remove duplicate IDs + Array + .from(pre.querySelectorAll("*[id]")) + .forEach(elem => elem.removeAttribute("id")); virtualSummary.appendChild(pre); idlIndexSec.appendChild(virtualSummary); cb(); diff --git a/tests/spec/core/idl-index-spec.js b/tests/spec/core/idl-index-spec.js index 55f46492ef..223e831520 100644 --- a/tests/spec/core/idl-index-spec.js +++ b/tests/spec/core/idl-index-spec.js @@ -1,6 +1,6 @@ "use strict"; describe("Core — IDL Index", () => { - afterAll( done => { + afterAll(done => { flushIframes(); done(); }); @@ -64,4 +64,26 @@ interface Bar { expect(doc.querySelectorAll("#idl-index > h2").length).toEqual(1); }).then(done); }); + it("doesn't include ids in the cloned indexed", done => { + const body = ` + ${makeDefaultBody()} +
+ interface Test { + + }; ++
Custom paragraph.
+