动态添加样式不起作用



对不起我的英语。我想隐藏在我的网站上。我正在使用此代码

  $('ul .tab li').attr("style", "display: none");

这项工作在所有Web浏览器上。但是,当我通过iPad介绍这一点时。存在错误。经过一些Google搜索,我发现ATTR不支持某些iPad浏览器。然后我只能使用JavaScript进行动态造型。当我使用此代码时,我遇到了一个错误

  document.querySelectorAll('ul .tab li').style.display = "none";
  document.querySelectorAll('ul .tab li li').style.display = "block";

错误是

  Uncaught TypeError: Cannot set property 'display' of undefined 

如果有人知道这一点,请帮助我。

尝试

$('ul .tab li').css("display", "none");

另外,

lib是否分配给ul元素?在这种情况下,正确的方法是

$('ul.tab li').css("display", "none");

删除ul.tab

之间的空间

更新:

querySelectorAll返回Array。这就是为什么您无法直接使用.style属性的原因。您将必须循环通过该数组才能将该样式应用于选定的元素。

尝试使用jquery css()

  $('ul .tab li').css("display", "none");
   AND
  $('ul .tab li').css("display", "block");

尝试此纯JavaScript:

var list=document.getElementsByTagName("UL")[0];
var list1=list.getElementsByClassName('tab'); 
list1.getElementsByTagName("LI")[0].style.display = "none";

您可以做到这一点:

var nodes = document.querySelectorAll('ul .tab li');
for (var i = 0; i < nodes.length; i++) {
    nodes[i].style.display = 'block'; //Or none
}

这是一个简单的示例

您可以只使用

$('ul .tab li').hide();

相关内容

  • 没有找到相关文章

最新更新