Fix the show/hide methods for string selector (#23042)

At that moment I made a mistake (failed to detect a JS variable type
correctly)

Close #23040
This commit is contained in:
wxiaoguang 2023-02-22 01:09:03 +08:00 committed by GitHub
parent 09d7377090
commit a7e98d70b6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -19,7 +19,7 @@ function assertShown(el, expectShown) {
} }
function elementsCall(el, func, ...args) { function elementsCall(el, func, ...args) {
if (el instanceof String) { if (typeof el === 'string' || el instanceof String) {
el = document.querySelectorAll(el); el = document.querySelectorAll(el);
} }
if (el instanceof Node) { if (el instanceof Node) {
@ -34,6 +34,10 @@ function elementsCall(el, func, ...args) {
} }
} }
/**
* @param el string (selector), Node, NodeList, HTMLCollection, Array or jQuery
* @param force force=true to show or force=false to hide, undefined to toggle
*/
function toggleShown(el, force) { function toggleShown(el, force) {
if (force === true) { if (force === true) {
el.classList.remove('gt-hidden'); el.classList.remove('gt-hidden');