Javascript 使用.filter后选择样式
我有一个div数组,它被一个我们将调用的索引过滤Javascript 使用.filter后选择样式,javascript,Javascript,我有一个div数组,它被一个我们将调用的索引过滤 餐厅菜单有三种不同的菜单 以下内容将返回索引的已配置显示值 console.log(Resturant.menus[0].style.display) 但是,这不起作用,在应用以下内容时,会在样式上引发和未定义异常: console.log(Resturant.menus.filter("." + index).style.display) 我注意到,在调试器中,当简单地应用console.log(Resturant.menus.filter
餐厅菜单
有三种不同的菜单
以下内容将返回索引的已配置显示值
console.log(Resturant.menus[0].style.display)
但是,这不起作用,在应用以下内容时,会在样式上引发和未定义异常:
console.log(Resturant.menus.filter("." + index).style.display)
我注意到,在调试器中,当简单地应用console.log(Resturant.menus.filter(“.”+index)时
如果选择的是div本身,而不是包含所有属性的对象,那么在使用过滤器时,我的级别似乎太高了。在使用过滤器时,允许选择样式
,我缺少什么呢?过滤器
返回一个jQuery对象。jQuery集合是select的包装器ed元素。style
是DOM元素的属性,即它是HtmleElement
对象的属性。要使用该属性,首先应使用.get(index)
方法或括号符号[index]
从集合中获取元素:
Resturant.menus.filter("." + index).get(0).style.display;
Resturant.menus.filter("." + index)[0].style.display;
您还可以使用prop
方法返回集合中第一个元素的指定属性:
Resturant.menus.filter("." + index).prop('style').display;
而且,由于您希望使用CSS
方法获取CSS属性,因此更有意义:
Resturant.menus.filter("." + index).css('display');