diff options
| author | Guillaume Gomez <guillaume1.gomez@gmail.com> | 2020-11-08 17:10:18 +0100 |
|---|---|---|
| committer | Guillaume Gomez <guillaume1.gomez@gmail.com> | 2020-11-12 15:00:42 +0100 |
| commit | 589588ce7b526d974357f4d83fedcf5309e4a3e5 (patch) | |
| tree | 3884e960079479796e06630e945377d7d7a3786f | |
| parent | 704050da2334c465784954d81c8990c4bc7a92c5 (diff) | |
| download | rust-589588ce7b526d974357f4d83fedcf5309e4a3e5.tar.gz rust-589588ce7b526d974357f4d83fedcf5309e4a3e5.zip | |
Improve settings.js code by using 'onEachLazy' directly instead of looping through DOM iterators
| -rw-r--r-- | src/librustdoc/html/static/settings.js | 55 |
1 files changed, 22 insertions, 33 deletions
diff --git a/src/librustdoc/html/static/settings.js b/src/librustdoc/html/static/settings.js index daed6e73134..bc14420232c 100644 --- a/src/librustdoc/html/static/settings.js +++ b/src/librustdoc/html/static/settings.js @@ -30,41 +30,30 @@ } function setEvents() { - var elems = { - toggles: Array.prototype.slice.call(document.getElementsByClassName("slider")), - selects: Array.prototype.slice.call(document.getElementsByClassName("select-wrapper")), - }; - var i; - - if (elems.toggles && elems.toggles.length > 0) { - for (i = 0; i < elems.toggles.length; ++i) { - var toggle = elems.toggles[i].previousElementSibling; - var settingId = toggle.id; - var settingValue = getSettingValue(settingId); - if (settingValue !== null) { - toggle.checked = settingValue === "true"; - } - toggle.onchange = function() { - changeSetting(this.id, this.checked); - }; - toggle.onkeyup = handleKey; - toggle.onkeyrelease = handleKey; + onEachLazy(document.getElementsByClassName("slider"), function(elem) { + var toggle = elem.previousElementSibling; + var settingId = toggle.id; + var settingValue = getSettingValue(settingId); + if (settingValue !== null) { + toggle.checked = settingValue === "true"; } - } - - if (elems.selects && elems.selects.length > 0) { - for (i = 0; i < elems.selects.length; ++i) { - var select = elems.selects[i].getElementsByTagName("select")[0]; - var settingId = select.id; - var settingValue = getSettingValue(settingId); - if (settingValue !== null) { - select.value = settingValue; - } - select.onchange = function() { - changeSetting(this.id, this.value); - }; + toggle.onchange = function() { + changeSetting(this.id, this.checked); + }; + toggle.onkeyup = handleKey; + toggle.onkeyrelease = handleKey; + }); + onEachLazy(document.getElementsByClassName("select-wrapper"), function(elem) { + var select = elem.getElementsByTagName("select")[0]; + var settingId = select.id; + var settingValue = getSettingValue(settingId); + if (settingValue !== null) { + select.value = settingValue; } - } + select.onchange = function() { + changeSetting(this.id, this.value); + }; + }); } window.addEventListener("DOMContentLoaded", setEvents); |
