Select 所有具有相同 class 的元素,有些元素有两个 class

Select all the elements with the same class, with some having two classes

我尝试 select 所有具有相同 class 的元素,并对它们执行 css()。

当元素有一个 class 时它起作用,但当它们有两个 class 时,这些元素不是 selected。

我的元素:

var ville; 


$("#enigme1_answers td").hover(

 function() {
  
  ville = $(this).html().toLowerCase();  
  
  $( "[class=" + ville + "]" ).css("background-color", "red");
  
  
 }, function() {
  
  $( "[class=" + ville + "]" ).css("background-color", "#2a3843");
 }
);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<tr>
 <td class="oslo"> O </td>
 <td class="oslo lecaire"> L </td>
 <td class="oslo viennes"> S </td>
 <td class="oslo gaborone"> O </td>
 <td class=erevan"> V </td>
 <td class="berlin"> N </td>
 <td class="rome"> E </td>
 <td class="athenes"> S </td>
 <td class="athenes"> E </td>
 <td class="athenes"> N </td>
 <td class="athenes"> E </td>
 <td class="athenes"> H </td>
 <td class="athenes"> T </td>
 <td class="athenes damas"> A </td>
</tr>

我使用 $("[class=myclass]") 方法。 具有一个 class 的元素,例如 Athenes(A 除外)被正确修改,但具有两个 class 的元素则没有。当其中一个 class 被 selected.

时,我希望修改这些元素

谢谢,

使用:

$(".classname")

而不是:

$("[class=classname]")

为什么

[class=classname] 比较整个 class 属性,因此您同时获得 classes、oslos 和 lecaire。然而,$(".classname") 将获得所有 HTML 个带有 class 的对象。

将它应用到您的代码中

$("#enigme1_answers").hover(function() { 
  $(this).find("td.oslo").css("background-color", "red");
}, function() {
  $(this).find("td.oslo").css("background-color", "#2a3843")
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
 <tr id="enigme1_answers">
  <td class="oslo"> O </td>
  <td class="oslo lecaire"> L </td>
  <td class="oslo viennes"> S </td>
  <td class="oslo gaborone"> O </td>
  <td class="erevan"> V </td>
  <td class="berlin"> N </td>
  <td class="rome"> E </td>
  <td class="athenes"> S </td>
  <td class="athenes"> E </td>
  <td class="athenes"> N </td>
  <td class="athenes"> E </td>
  <td class="athenes"> H </td>
  <td class="athenes"> T </td>
  <td class="athenes damas"> A </td>
 </tr>
</table>