Установка файла cookie с помощью jquery cookie.js с использованием toggleClass

У меня есть следующий html для группы миниатюр, и я использую значок (icon-heart), чтобы установить избранное для изображения, изменив цвет значка на красный и добавив class="Favorite":

 <div class="selectFav">
 <a href="slide.jpg" data-rel="prettyPhoto[Gallery]"  title="Slide"><img  src="slide.jpg" alt="Slide"  width="124" height="124"/></a>
 <ul class="icon">
 <li>   <div class="icon-heart"></div> </li>
 <li>   <div class="icon-camera"></div> </li>
 </ul>
</div>

CSS:

 .flag{
 color:red;
 }   

Я хочу установить файл cookie с помощью запроса cookie.js, когда отдельный палец установлен как избранный. Проблема в том, что когда я пытаюсь установить файл cookie, я устанавливаю все значки-сердечки, чтобы они отображались как избранные, а не только для этого конкретного selectFav.

$(".icon-heart").on('click', function() {
$(this).toggleClass('flag').closest('.selectFav').addClass('Favorite');
});

Любая помощь будет оценена по достоинству!


person Macsupport    schedule 13.09.2012    source источник
comment
зачем тебе печенье? может быть, пост ajax будет хорош, если щелкнуть его как избранное, или вы хотите скрыть значок сердца?   -  person Oscar Jara    schedule 13.09.2012
comment
Конечно, я хочу, чтобы постоянные посетители по-прежнему видели свои сохраненные избранные страницы на странице. Значок сердца меняет цвет, скрытие его лишает цели и не позволяет им вернуться и выбрать это изображение в будущем в качестве избранного, если оно скрыто.   -  person Macsupport    schedule 13.09.2012


Ответы (1)


Я сделал это для вас в качестве примера:

Текущая демонстрация:

http://jsfiddle.net/oscarj24/GUUjr/1/

  • Это поможет вам узнать, как управлять файлами cookie.

Инструкции:

  • Просто click сердца, которые вы хотите в первый момент (эти сердца исчезнут), затем нажмите кнопку Run столько раз, сколько хотите, и посмотрите, что предыдущие сердца все еще исчезли из-за файла cookie.

  • Вы можете нажать кнопку Kill the cookie, чтобы начать все заново. Пожалуйста, прочитайте комментарии к коду для лучшего понимания.

person Oscar Jara    schedule 13.09.2012
comment
Большое спасибо за ваши усилия! К сожалению, я не могу убрать иконки. В основном это означает, что как только кто-то сделает любимый выбор, он никогда не сможет изменить его, если не уничтожит файл cookie. Нет возможности легко переключаться. вот jsfiddle, чтобы показать вам, как это работает в моей галерее. http://jsfiddle.net/macsupport/6MKeg/ - person Macsupport; 14.09.2012
comment
С нетерпением жду возможности увидеть это. - person Macsupport; 14.09.2012
comment
Я обновил свой jsfiddle, изменив ваш код, чтобы он соответствовал моему html. Это работает, если выбрано только одно сердце или все сердца, но если я выбираю 2 из 3, оно случайным образом устанавливает фаворита в файле cookie. Любые идеи, почему это происходит? Мои способности новичка не совсем понимают, почему - person Macsupport; 15.09.2012
comment
Оскар, есть шанс, что ты сможешь обновить свой ответ? Был бы признателен! - person Macsupport; 19.09.2012
comment
Привет! извините, что не ответил вовремя, я был очень занят, сегодня я воспользуюсь моментом, чтобы помочь вам утром :-) - person Oscar Jara; 19.09.2012
comment
Привет, Оскар! Если у тебя будет немного времени, чтобы продолжить в будущем, было бы здорово! Майк, я пойму, если ты занят! - person Macsupport; 30.09.2012
comment
Извините, у меня много дел, и я просто отвечал на быстрые вопросы, но я действительно обещаю, что завтра сосредоточусь на этом и дам вам знать кое-что, сколько у вас времени? просто знать - person Oscar Jara; 30.09.2012
comment
занимать столько времени, сколько вам нужно. Я ценю любую помощь и отсутствие ограничений во времени. - person Macsupport; 01.10.2012