diff --git a/s4-main.js b/s4-main.js index 8d062cb..302538a 100644 --- a/s4-main.js +++ b/s4-main.js @@ -26,6 +26,9 @@ else lines = [""]; var re = new RegExp("[, ]*#"+articleId+"(?![0-9])"); + checked = (p.nodeName.match(/^input$/) + ? p.checked // checkbox obeys its status + : !lines[0].match(re)) // a-elment toggles redirection if (checked) { if (!lines[0].match(re)) { var re2 = new RegExp(/>#[#0-9, ]+[0-9]/); @@ -51,12 +54,16 @@ textarea.value = lines.join("\n"); } } - function init(){ + function init() { var el, check = collectElementsByNameAttr("input", "notifyto"); if (check) - for (var i of check) { + for (let i of check) { i.addEventListener("click", insertRedirect, null); } + for (let i of document.getElementsByTagName("a")) + if (i.getAttribute("href").match(/^#[0-9]+$/)) + if (RegExp.lastMatch == i.innerHTML) + i.addEventListener("click", insertRedirect, null) } document.addEventListener('DOMContentLoaded', init, null); })();