Показать сообщение отдельно
  #6 (permalink)  
Старый 25.08.2017, 18:00
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от Nezumi.May
Когда перезагружаешь страницу спойлер закрыт, а нужно чтобы был открыт у выбранной ссылки.
Это понятно, но строка этого кода абсурдна. Если бы спойлеры открывались триггером по индексу, тогда еще можно было бы смирится, но ведь их же нужно как-то открывать пользователю, а значит есть элементы управления. Именно индекс элемента управления, которым открывается спойлер и нужно запоминать в хранилище. Зачем при этом хранить объект в нем как JSON не понятно, если только хранение не предполагает и ID видео, и тип.

Я не знаю как все на самом деле у вас организовано, но например:

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<style>
.box {
    padding-top: 30px;
    margin-bottom: 3px;
    background-color: #999;
}
.spoiler_body {
    display: none;
    background-color: #fff;
}
</style>
<script>
$(function() {
    var _mem = localStorage;
    idx = !!_mem['items'] && _mem['items'] || 0;
    var box = $('div.box').click(function() {
        $(this).find('.spoiler_body').slideDown(300);
        box.not(this).find('.spoiler_body').slideUp(300);
        _mem['items'] = box.index(this); //запомнили спойлер
    }).find('a').click(function() {
        var d = $(this).data('avi');
        //запуск фрейма
    }).end();
    box.eq(idx).trigger('click');
});
</script>
</head>
<body>
<div class="box"><div class="spoiler_body"><a data-avi="[11111,1]">111_1</a><br><a data-avi="[11111,2]">111_2</a></div></div>
<div class="box"><div class="spoiler_body"><a data-avi="[22222,1]">222_1</a><br><a data-avi="[22222,2]">222_2</a></div></div>
<div class="box"><div class="spoiler_body"><a data-avi="[33333,1]">333_1</a><br><a data-avi="[33333,2]">333_2</a></div></div>
</body>
</html>


Сообщение от Nezumi.May
Так то data.. а тут несколько сотен материалов с кодом
Сообщение от Nezumi.May
Можно как-то иначе сделать, чтобы панель, которая появляется после нажатия на серию, работала сразу, а не после перезагрузки?
Не понятно о чем речь.
Ответить с цитированием