Опитвам се да избера div и да променя неговото фоново изображение, но само ако елементът преди него съществува и има определено ID. Вижте следното:
<td class ="thumbnails">
<a name="abc" id ="def"></a>
<div class="bgimages"></div>
</td>
Как да избера и да променя фоновото изображение на div с клас "bgimages" на базата на това дали има елемент преди него с идентификатор "def"?
Отговори:
2 за отговор № 1Няма причина да използвате jQuery или javascript за това, можете да правите само с CSS. Вижте по-долу пример с цветове.
.bgimages {
background-color: green;
}
#def + .bgimages {
background-color: orange;
}
<table>
<tr>
<td class ="thumbnails">
<a name="abc" id ="def">yyyy</a>
<div class="bgimages">yyyy</div>
</td>
</tr>
<tr>
<td class ="thumbnails">
<a name="abc" id ="defxxx">yyyy</a>
<div class="bgimages">yyyy</div>
</td>
</tr>
</table>
Заменете background-color
с background-image
2 за отговор № 2
Можете да изберете div
елемент с a def
преди това да е котва;
console.log($("a#def").next("div.bgimages"));
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<td class ="thumbnails">
<a name="abc" id ="def"></a>
<div class="bgimages"></div>
</td>