Bookmarks 1.0 - Закладки страниц с использованием localStorage
Давненько не писал стоящих скриптов, решил потренироваться и написал скрипт закладок. Скрипт не требует никаких модулей, закладку можно создать для любой страницы. Демонстрацию скрипта вы можете посмотреть здесь.
UPD (23.08.2013): Полностью переписан скрипт. Всем, кто его устанавливал - просьба пройти повторную установку.
url - адрес страницы event - объект из двух функций:"success" (Выполнится, если будет найдена закладка) и "failed" (Выполнится, если закладка не найдена).
: если закладка будет найдена, то в консоли вы можете увидеть запись:"Номер закладки: x", где x - порядковый номер закладки в массиве.Так же существует другой формат записи, при котором функция вернет true/false:
Код
$.bookmarks.search(url);
Добавление закладок
Код
$.bookmarks.add(name,url,event);
name - название закладки url - адрес закладки event - объект из двух функций:"success" (Выполнится, если закладка будет добавлена) и "failed" (Выполнится, если закладка не будет добавлена).
Пример:
Код
$.bookmarks.add('Закладка #1','/index1.html',{ success:function(){ alert('Закладка успешно добавлена.'); }, failed:function(){ alert('Такая закладка уже есть.'); } });
Удаление закладок
Код
$.bookmarks.erase(url,event);
url - адрес закладки event - объект из двух функций:"success" (Выполнится, если закладка будет удалена) и "failed" (Выполнится, если закладка не будет удалена).
Пример:
Код
$.bookmarks.erase('/index1.html',{ success:function(){ alert('Закладка успешно удалена.'); }, failed:function(){ alert('Закладка не найдена.'); } });
Вывод закладок
Код
$('элемент').bookmarks({slice,sort},event);
slice - количество закладок. Не указывайте, если хотите вывести все. sort - сортировка закладок. На данный момент доступно только одно значение ("name"), при котором закладки сортируются по имени. Не указывайте, если хотите сортировать закладки по дате добавления. event - функция, выполняемая после вывода закладок.
Пример:
Код
$('.book').bookmarks(); // Вывод всех закладок $('.book').bookmarks({slice:3}); // Вывод 3 последних заклади $('.book').bookmarks({sort:'name'}); // Сортировка по имени $('.book').bookmarks({sort:'name',slice:3}); // Вывод 3 последних закладки + отсортировать по имени.
На этом пока все. По всем вопросам, а так же при нахождении багов просьба писать в комменты. Всем хостов
Есть маленькая мелочь! Когда удаляешь все закладки блок просто исчезает. Можно как нить сделать чтоб сразу после удаления всех закладок появлялся блок с надписью У вас нет закладок. А, то он появляется только после перезагрузки страницы....
И еще один надоедливый вопрос) Как сделать чтобы название выводилось то, что установлено у меня например в <title> страницы? Просто очень неудобно получается когда нужно для каждой отделенной станицы/модуля писать условие с названием страницы. $TITLE$ и прочее не работает...
Например сделать input text, и при вводе определенного названия закладки в него, показывались только нужные. А также, как сделать, чтобы при добавлении страницы в закладу выводилось сообщение о успешном добавлении?
Когда удаляешь все закладки блок просто исчезает.
Можно как нить сделать чтоб сразу после удаления всех закладок появлялся блок с надписью У вас нет закладок. А, то он появляется только после перезагрузки страницы....
Заранее спасибо!
Добавит страницу на которой находится ссылка в закладки
выводилось сообщение о успешном добавлении?
2. Сообщение об успешном добавлении:
success:function(){
alert('Закладка успешно добавлена.');
},
failed:function(){
alert('Такая закладка уже есть.');
}
});