繁体   English   中英

用香草javascript写这行jQuery

[英]write this line of jQuery in vanilla javascript

谁能帮我用JavaScript写这行jQuery。 它适用于造型一类的单一规则。

$('.dataCard').css('visibilty', 'visible !important');

由于!important在使用javascript设置样式时不适用,因此就像这样

 var elems = document.querySelectorAll('.dataCard');

 for (var i=elems.length; i--;) {
      elems[i].style.visibility = 'visible';
 }

如果要创建一个通用功能来替代jQuery中的功能,可以执行以下操作:

function setStyle(elemOrSelector, prop, val) {
    var items;
    if (typeof elemOrSelector === "string") {
        // run selector query
        items = document.querySelectorAll(elemOrSelector);
    } else if (elemOrSelector.nodeName) {
        // must be single DOM object
        items = [elemOrSelector];
    } else if (elemOrSelector.length)
        // must be an array or nodeList
        items = elemOrSelector;
    } else {
        // don't know what it is
        return;
    }
    for (var i = 0; i < items.length; i++) {
        items[i].style[prop] = val;
    }
}

setStyle('.dataCard', "visibility", "visible");

此通用功能允许您传递DOM元素,类似于DOM元素列表的数组或选择器字符串。


如果你不想让一般purposeness,那么你可以这样做:

function setStyle(selector, prop, val) {
    var items = document.querySelectorAll(selector);
    for (var i = 0; i < items.length; i++) {
        items[i].style[prop] = val;
    }
}

setStyle('.dataCard', "visibility", "visible");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM