Javascript 查找具有两个CSS类的元素

Javascript 查找具有两个CSS类的元素,javascript,jquery,Javascript,Jquery,我有以下部门: <div class="gallery home"></div> 问题是两者都返回true。难道不是只有第一个才是真的吗 然后,我尝试只使用Javascript,同样的情况也发生了: if (document.getElementsByClassName('.gallery.home')) { console.log('home'); } if (document.getElementsByClassName('.gallery.s

我有以下部门:

<div class="gallery home"></div>
问题是两者都返回true。难道不是只有第一个才是真的吗

然后,我尝试只使用Javascript,同样的情况也发生了:

  if (document.getElementsByClassName('.gallery.home')) {
    console.log('home');
  }

  if (document.getElementsByClassName('.gallery.showcase')) {
    console.log('showcase');
  }
如何匹配具有2个类的元素?

$'.gallery.showcase'返回jQuery包装的对象列表,即使没有匹配的元素,该列表也是true

$'.gallery.showcase'.length>0将是您所需要的。

$'.gallery.showcase'返回一个jQuery包装的对象列表,即使没有匹配的元素,该列表也是真实的

document.getElementsByClassName('gallery showcase');
$'.gallery.showcase'.length>0将是您所需要的

document.getElementsByClassName('gallery showcase');
它是用空格分隔的,没有点


它是用空格分隔的,没有点

您可以将其与单个或单独的条件进行比较

单一条件类

分离条件如

console.log$'.gallery'.length>0&$'.home'.length>0 console.log$'.gallery'.length>0&$'.showcase'.length>0 console.log$'.gallery.home'.length>0 console.log$'.gallery.showcase'.length>0
您可以将其与单个或单独的条件进行比较

单一条件类

分离条件如

console.log$'.gallery'.length>0&$'.home'.length>0 console.log$'.gallery'.length>0&$'.showcase'.length>0 console.log$'.gallery.home'.length>0 console.log$'.gallery.showcase'.length>0
在它所说的文件中

您也可以对任何元素调用GetElementsByCassName;会的 仅返回指定根的后代元素 具有给定类名的元素

此外,您可以在示例中看到:

如果要选择特定元素,可以使用querySelector


对于jquery部件,$将始终返回一个对象。

在它所说的文档中

您也可以对任何元素调用GetElementsByCassName;会的 仅返回指定根的后代元素 具有给定类名的元素

此外,您可以在示例中看到:

如果要选择特定元素,可以使用querySelector

对于jquery部件,$将始终返回一个对象

if($('.gallery.home').length > 0)
if($('.gallery.showcase').length > 0)
if($('.gallery').length > 0 && $('.home').length > 0)

if($('.gallery').length > 0 && $('.showcase').length > 0)
if (document.querySelectorAll('.gallery.home')) {
  console.log('home');
}

if (document.querySelectorAll('.gallery.showcase')) {
  console.log('showcase');
}