У меня есть код для группы книг, в которых есть любимая кнопка напротив каждого tr
Вот код, который я получил
$(function() {
$('tr').click(function(e) {
const $parentTable = $(this).closest("table");
$(this).find('img.white-star').toggle();
$(this).find('img.yellow-star').toggle();
const $favs = $("tr").has('img.yellow-star:visible');
$parentTable.prepend($favs)
const favs = $favs.find("td:first").map((i, fav) => $(fav).data("id")).get();
//localStorage.setItem($parentTable.attr("id")+"favs",JSON.stringify(favs)); // uncomment this on server
})
let favs // = localStorage.getItem($(".ratingTable").attr("id")+"favs"); // uncomment when on your server
// favs = favs ? JSON.parse(favs) : []; // uncomment when on your server
favs = favs ? JSON.parse(favs) : ["Book A", "Book C"]; // remove this after testing
$.each(favs, function(i, fav) {
$("table tr td[data-id='" + fav + "']").each(function() {
$(this).parent().trigger("click")
});
});
});
td {
cursor: pointer;
}
img {
height: 25px;
}
.hide {
display: none;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table class="ratingTable" id="table1">
<tr>
<td data-id="Book A">Magic by dalton</td>
<td>
<div class="fav">
<img class="white-star" src="https://i.postimg.cc/g0b9JG0w/unfav.png" />
<img class="yellow-star hide" src="https://i.postimg.cc/QN1T9bSH/fav.png" />
</div>
</td>
</tr>
<tr>
<td data-id="Book B">The chair by Jhon</td>
<td>
<div class="fav">
<img class="white-star" src="https://i.postimg.cc/g0b9JG0w/unfav.png" />
<img class="yellow-star hide" src="https://i.postimg.cc/QN1T9bSH/fav.png" />
</div>
</td>
</tr>
<tr>
<td data-id="Book C"> Book C</td>
<td>
<div class="fav">
<img class="white-star" src="https://i.postimg.cc/g0b9JG0w/unfav.png" />
<img class="yellow-star hide" src="https://i.postimg.cc/QN1T9bSH/fav.png" />
</div>
</td>
</tr>
</table>
В настоящее время я пытаюсь сделать сайт похожим на youtube. Я хотел бы, чтобы вышеупомянутый параметр рейтинга был добавлен в список видео. - это код, с которым я работаю
Я хотел бы иметь следующее: когда пользователь оценивает рейтинг кликов, я хочу, чтобы сохранялась не только tr названия видео, но и все tr & td под этим телом должны быть выбраны и сохранены в localstorage & сохраняется при обновлении страницы, но в списке книг выбирается и сохраняется только tr. Надеюсь, вы это понимаете.
Кнопка «Рейтинг» или «Добавить в избранное» перенесена с tr на tbody. Любая помощь приветствуется. Спасибо
.white-star,
.yellow-star {
height: 25px;
}
.hide {
display: none;
}
.ratingTable {
width: 400px;
}
td {
cursor: pointer;
}
td[data-id] {
width: 300px;
}
#table1 {
width: 100%;
}
<table id="Music">
<tbody data-id="Video-A" class="searchable music">
<tr class="row">
<td rowspan="4" class="a"><img src="https://img.youtube.com/vi/{{youtube video code }}/default.jpg" alt="" /></td>
<td class="a2"><a href="{{LINK to Yotube video}}">Music </a></td>
<td rowspan="4">
<div class="fav">
<img class="white-star" src="https://i.postimg.cc/g0b9JG0w/unfav.png" />
<img class="yellow-star hide" src="https://i.postimg.cc/QN1T9bSH/fav.png" />
</div>
</td>
</tr>
<tr class="row">
<td class="b"><span class="child"> Date : 15-Apr-20 </span></td>
</tr>
<tr class="row">
<td class="b"><span class="child">Length : </span></td>
</tr>
<tr class="row">
<td class="b"><span class="child">Category : Music </span></td>
</tr>
<tr class="row">
<td rowspan="4" class="a"><img src="https://img.youtube.com/vi/{{youtube video code }}/default.jpg" alt="" /></td>
<td class="a2"><a href="{{LINK to Yotube video}}">Music </a></td>
<td rowspan="4">
<div class="fav">
<img class="white-star" src="https://i.postimg.cc/g0b9JG0w/unfav.png" />
<img class="yellow-star hide" src="https://i.postimg.cc/QN1T9bSH/fav.png" />
</div>
</td>
</tr>
<tr class="row">
<td class="b"><span class="child"> Date : 15-Apr-20 </span></td>
</tr>
<tr class="row">
<td class="b"><span class="child">Length : </span></td>
</tr>
<tr class="row">
<td class="b"><span class="child">Category : Music </span></td>
</tr>
</tbody>
</table>
<table id="Art">
<tbody data-id="Video-B" class="searchable art">
<tr class="row">
<td rowspan="4" class="a"><img src="https://img.youtube.com/vi/{{youtube video code }}/default.jpg" alt="" /></td>
<td class="a2"><a href="{{LINK to Yotube video}}">art 1</a></td>
<td rowspan="4">
<div class="fav">
<img class="white-star" src="https://i.postimg.cc/g0b9JG0w/unfav.png" />
<img class="yellow-star hide" src="https://i.postimg.cc/QN1T9bSH/fav.png" />
</div>
</td>
</tr>
<tr class="row">
<td class="b"><span class="child"> Date : 15-Apr-20 </span></td>
</tr>
<tr class="row">
<td class="b"><span class="child">Length : </span></td>
</tr>
<tr class="row">
<td class="b"><span class="child">Category : art </span></td>
</tr>
</tbody>
</table>
<table id="Art">
<tbody data-id="Video-D" class="searchable dance">
<tr class="row">
<td rowspan="4" class="a"><img src="https://img.youtube.com/vi/{{youtube video code }}/default.jpg" alt="" /></td>
<td class="a2"><a href="{{LINK to Yotube video}}">dance 1</a></td>
<td rowspan="4">
<div class="fav">
<img class="white-star" src="https://i.postimg.cc/g0b9JG0w/unfav.png" />
<img class="yellow-star hide" src="https://i.postimg.cc/QN1T9bSH/fav.png" />
</div>
</td>
</tr>
<tr class="row">
<td class="b"><span class="child"> Date : 15-Apr-20 </span></td>
</tr>
<tr class="row">
<td class="b"><span class="child">Length : </span></td>
</tr>
<tr class="row">
<td class="b"><span class="child">Category : dance </span></td>
</tr>
</tbody>
</table>