Советы

Как сделать кнопку "добавить в избранное". Добавить в избранное на JQuery Скрипт добавление файлов в закладки

Как сделать кнопку

С каждым днем увеличивается количество вебмастеров, которые стремятся делать свои сайты одинаково удобными для пользователей всех браузеров, а не затачивают их только под Internet Explorer, как это было раньше. Наверное больше всего пользователи альтернативных браузеров не любят ссылку "Добавить в Избранное", которая встречается на каждом сайте, а работает только в Internet Explorer. Сейчас я расскажу как правильно реализовать на своем сайте данную функцию, чтобы она работала во всех распространенных браузерах.

Так как пользователю может понадобиться добавить в Избранное не только сайт (главную страницу), но и страницу на которой он находится, то мы подробно рассмотрим оба варианта, а вы сами решите какой из них использовать.

Добавить в Избранное главную страницу сайта

Давайте сначала рассмотрим чем отличается ссылка "Добавить в Избранное" для Internet Explorer от ее аналога в других браузерах, а потом обьединим их в одну. В IE используется функция window.external.AddFavorite(), которая принимает два значения: адрес страницы для добавления в закладки и ее название:

Добавить сайт в Избранное

Думаю обьяснять здесь ничего не нужно. А вот следующий пример мы рассмотрим подробнее. Код для добавления в Избранное для Opera, Firefox и Netscape выглядит следующим образом:

Добавить сайт в Избранное

Как видите это обычная ссылка с наличием дополнительного параметра rel="sidebar" который как раз и указывает браузеру на необходимость добавить сайт в закладки при клике на ссылке. Кроме этого в параметре title="" нужно указать с каким именем добавлять сайт в закладки. А вот адрес страницы, которая добавляется, прописывается в href="". Обычно указывается главная страница сайта и его название.



Окошко, которое появляется при нажатии на ссылку

Теперь нам нужно сделать так, чтобы ссылка "Добавить в избранное" работала одинаково хорошо во всех браузерах. Так как код для IE работает только в нем, а параметр rel="sidebar" поддерживают только Opera, Firefox и Netscape, то ничто не мешает нам просто обьединить оба варианта в одну ссылку:

Добавить сайт в Избранное

Давайте решим более сложную задачу и вместо того, чтобы вручную прописывать адрес и название сайта, будем автоматически определять на какой странице находится в данный момент посетитель и предоставим ему возможность добавить в Избранное текущую страницу с соответсвующим адресом и названием.

Добавить в Избранное текущую страницу

Итак, давайте снова начнем с Internet Explorer:


Как видите в коде ничего не изменилось, кроме входящих параметров функции window.external.AddFavorite(). В JavaScript-параметре document.title содержится название страницы, которое берется браузером из указанного нами заголовка документа, расположенного между тэгами Название страницы. Адрес текущей страницы браузер получает из адресной строки и присваивает его параметру location.href. Таким образом нет необходимости изменять вручную на каждой странице нужные нам параметры.



Новая закладка в Interet Explorer

С браузерами Opera, Firefox и Netscape все немного сложнее. Нам придется написать небольшую JavaScript-функцию, которая будет работать примерно также как и уже известная нам функция в Internet Explorer. Мы поместим ее внутри ссылки, так что она будет занимать всего лишь одну строку, но для более легкого восприятия я ее немного отформатировал:

Добавить текущую страницу в Избранное

В самом начале мы присвоили переменным url и title значения JavaScript-параметров window.document.location (адрес страницы) и window.document.title (название страницы). Далее мы создаем функцию bookmark(). С ее помощью мы из нескольких переменных, значением которых является адрес и название страницы, генерируем ссылку. Не забываем также о параметре rel="sidebar", который так же будет сгенерирован с помощью bookmark().

Теперь нам осталось обьединить код для Internet Explorer и других браузеров, чтобы получить одну кросбраузерную ссылку:

Добавить текущую страницу в Избранное

У нас уже имеется функция, совместимая с основными браузерами. Теперь нам нужно как то совместить ее с пользователями.

Ломаем стереотипы

Так как многие пользователи альтернативных браузеров уже привыкли к тому что ссылка "Добавить в Избранное" работает только в Internet Explorer и не обращают на нее внимания, то нам нужно как то ненавязчиво показать посетителю что мы позаботились о работоспособности данной ссылки в его браузере. Думаю наиболее удачным вариантом будет определять каким браузером пользуется посетитель нашего сайта и выводить соответствующий логотип возле ссылки. А можно просто вывести сразу все логотипы:


Так выглядит конечный результат

Копирование статьи запрещено.

Многие вебмастера похоронили такой вид привлечения постоянных читателей блога, как прямые переходы пользователей из закладок . Именно о добавлении станицы в закладки – целесообразности этой функции на сайте мы сейчас и поговорим.

Отчасти это связанно с тем, что ведущие сео блоги (куда обращены все взоры начинающих и не очень начинающих вебмастеров) ориентированы на свою возрастную аудиторию, которая в основной своей массе пользуется RSS ридерами или вовсе Твиттером. Сейчас действительно очень редко где можно встретить кнопочку – “добавить страницу в закладки”. А вот и зря! Некоторые тематики подразумевают более возрастную группу, которая с большим трудом переваривает “нововведения” вроде twitter’ов, и даже RSS ридеров, которые уже давно вошли в обиход.

Таким людям гораздо понятнее закладочка – Избранное , где все сайты лежат отсортированными в любимом браузере.

Конечно же, никто не запрещает таким фанатам закладок нажать заветное сочетание клавиш Ctrl + D и добавить, таким образом, заветную закладку, но ведь для очень многих людей, жуткие комбинации на клавиатуре, пускай даже состоящие всего из 2ух клавиш – это как ладан для черта.

Конечно - это в основном представители старшего поколения, консерваторы, но и про них тоже нельзя забывать, особенно, когда тематика сайта ориентирована под эту возрастную группу людей.

Итак, задача – разместить на сайте кроссбраузерную кнопку “Добавить в Закладки” или “Добавить в Избранное” – как вам больше нравится. Главное, повторюсь – это кроссбраузерность, т.е. работоспособность этой кнопки в ведущих браузерах – Google Chrome, Mozilla Firefox, Opera, Internet Explorer.

Скажете легкая задачка?! Отнюдь – все проблемы кроются в универсальности кода, в его кроссбраузерности . Один код подходит только для Internet Explorer’a и не работает для других браузеров.

Вот пример, который наиболее распространен в интернете.

Добавить в избранное

Или вот вариант простенького, но бесполезного java скрипта:

Add this Page to your Favorites

Данные коды работают только с браузером Internet Еxplorer! Чтобы скрипт по добавлению закладки был действительно кроссбраузерным, в нем должна быть встроена проверка браузера клиента и в зависимости от браузера использоваться соответствующий код добавления в закладки .

Данный скрипт работает с бразуерами Firefox, Opera, но вот Гугловский Хром его не понимает и в выводит предложение нажать Ctrl + D добавив таким образом страницу в закладки.

Но это лучшее, что мне удалось накопать на просторах интернета (установка антенн не в счёт!).

Кроссбраузерный скрипт:

< script type="text/javascript">
function getBrowserInfo() {
var t,v = undefined;

if (window.chrome) t = "Chrome";
else if (window.opera) t = "Opera";
else if (document.all) {
t = "IE";
var nv = navigator.appVersion;
var s = nv.indexOf("MSIE")+5;
v = nv.substring(s,s+1);
}
else if (navigator.appName) t = "Netscape";

return {type:t,version:v};
}

function bookmark(a){
var url = window.document.location;
var title = window.document.title;
var b = getBrowserInfo();

if (b.type == "IE" && 8 > = b.version && b.version > = 4) window.external.AddFavorite(url,title);
else if (b.type == "Opera") {
a.href = url;
a.rel = "sidebar";
a.title = url+","+title;
return true;
}
else if (b.type == "Netscape") window.sidebar.addPanel(title,url,"");
else alert("Нажмите CTRL-D, чтобы добавить страницу в закладки.");
return false;
}
< /script>


Добавить в избранное < /a >

Для использования этого скрипта на своем сайте, надо добавить верхнюю часть, которая между тэгами < script type="text/javascript" > и в заколовок (header) вашей темы.

Если у вас будет решение – как добавить функцию добавления в закладки для браузера Хром в скрипт, тогда отзовитесь, пожалуйста, в комментариях!

В этой статье будет рассказано о разных способах добавления папок, файлов и программ в список «Избранное» файлового менеджера операционной системы Windows - Проводник.

В операционной системе Windows, в Проводнике находится список «Избранное». В этот список операционной системой по умолчанию добавляются ссылки на определенные папки (например, «Рабочий стол»), а также на папки некоторых программ, после их установки (например, папки облачных файловых хранилищ Google Drive, OneDrive, Яндекс.Диск и других).

В список «Избранное» легко можно добавить другие новые папки, или удалить находящиеся там папки из списка «Избранное».

Сначала рассмотрим добавление ссылок на папки в список «Избранное», а также их удаление из этого списка.

Удаление папки из Избранное

Для удаления папки из списка «Избранное» нужно просто подвести курсор мыши к нужной папки и нажать на правую кнопку мыши. В контекстном меню нужно выбрать пункт «Удалить» и после этого папка будет удалена из этого списка.

Добавление папки в Избранное

Для добавления новой папки в «Избранное» необходимо сначала открыть Проводник. Затем потребуется выбрать нужную папку и просто перетащить ее, удерживая при этом кнопку мыши, в окно Проводника в список «Избранное». При этом около перетаскиваемой папки будет видна надпись «Создать ссылку в Избранное».

Добавить папку можно и другим способом. Для этого нужно открыть Проводник, а затем в окне Проводника открыть папку, которую требуется добавить в список «Избранное». На этом изображении выбрана папка «CD-DVD».

После этого в «Избранное» появляется новая папка, на приведенном примере - папка «CD-DVD».

Восстановление удаленных папок в Избранное

После удаления расположенных по умолчанию ссылок на папки вы можете их восстановить. Для этого нужно щелкнуть правой кнопкой мыши по «Избранное», а затем в контекстном меню выбрать пункт «Восстановить избранные ссылки».

Удаленные ссылки на папки, которые были установлены по умолчанию в «Избранное», будут восстановлены. Это действие не затронет ранее добавленные папки в «Избранное», ссылки на эти папки останутся в списке «Избранное».

Добавление программ в Избранное

Описанными выше способами нельзя добавить в «Избранное» ярлыки программ. При попытке переместить ярлык программы в «Избранное», появляется запись «Не удалось поместить в “Избранное”».

Это препятствие можно обойти обходным путем, открыв для этого папку «Ссылки», в которой находится содержимое списка «Избранное».

Если у программы, которую необходимо будет добавить в «Избранное», нет ярлыка, то нужно создать ярлык для этой программы и отправить его на Рабочий стол.

Ярлык для программы создается таким способом - меню «Пуск» => «Все программы» => Выбираете программу и щелкаете по ней правой кнопкой мыши => в контекстном меню выбираете «Создать ярлык» => «Создать ярлык в данной папке нельзя. Поместить его на рабочий стол?» => «Да». Теперь ярлык выбранной программы помещен в папку Рабочий стол.

После того, как в Проводнике была открыта папка с ярлыком программы или ярлык выбранной программы находится на Рабочем столе, нужно открыть меню «Пуск» и в самом правом верхнем углу открыть свою персональную папку (название вашей папки пользователя). Содержимое списка «Избранное» находится в папке «Ссылки».

Откройте Проводник, а затем перетащите ярлык программы в папку «Ссылки» из папки, в которой находится ярлык выбранной программы. Если ярлык выбранной программы находится на Рабочем столе, то просто перетащите мышью этот ярлык в папку «Ссылки».

На изображении я перетащил ярлык программы Skype в папку «Ссылки», и сразу после этого ярлык «Skype» появился в списке «Избранное». В списке «Избранное» ярлыки программ отображаются без стрелки.

Добавление файлов в Избранное

Точно таким образом можно добавлять в список «Избранное» отдельные файлы. Сначала нужно выбрать файл, который будет помешен в список «Избранное».

Для примера я выбрал «документ Word» с именем «Вопросы». По выбранному файлу нужно будет нажать правой кнопкой мыши, а в контекстном меню выбрать пункт «Создать ярлык».

Перед перемещением ярлыка файла, с ярлыка файла можно убрать окончание - «Ярлык», чтобы имя ярлыка не отличалось от имени файла. Так просто внешне красивее будет выглядеть этот ярлык.

Для этого кликните правой кнопкой мыши по ярлыку, а в контекстном меню выберите пункт «Переименовать», а затем уберите лишние слова из названия ярлыка файла.

После этих действий требуется открыть папку «Ссылки, для этого необходимо пройти по такому пути — меню «Пуск» => «Открытие персональной папки» => «Ссылки».

Теперь перетащите ярлык файла из папки, в которой он сейчас находится, в открытую папку «Ссылки». Сразу после этого ярлык файла «Вопросы» появляется в списке «Избранное».

Для того, чтобы удалить добавленные программы и файлы из списка Избранное» нужно подвести курсор мыши к выбранному файлу и в контекстном меню выбрать пункт «Удалить».

Выводы статьи

При необходимости, пользователь может добавить файлы и папки в список «Избранное» Проводника Windows. Если программа или файл не нужны в избранном, их можно оттуда удалить.

Кроссбраузерное добавление страницы в закладки реализуется с использованием JavaScript. Для добавления страницы в Избранное браузеров Internet Explorer и браузеров, работающих на движке IE, вызывается стандартный метод AddFavorite . Однако здесь есть одна важная деталь. Если страница IE открыта как embedded-объект в другом приложении, например в плагинах или при использовании компонентов для работы с html, то объект window.external присутствует, но его метод AddFavorite не срабатывает. Это наиболее частая ошибка разработчиков, которые просто копируют код друг у друга без его понимания и тестирования. Также большой ошибкой будет использование на своем сайте только одного этого способа.

Браузеры на движке Gecko, такие как Firefox, Netscape, K-Meleon и другие, имеют объект window.sidebar и метод для добавления addPanel . Третий параметр метода недокументирован и является необязательным, поэтому в скрипте заменяется просто пустой строкой. Обратите внимание, что по умолчанию ссылка добавляется не совсем в закладки, а в боковую панель браузера. Для добавления страницы в нужную папку закладок выберите ее в выпадающем меню.

Для браузера Opera ссылка добавления в закладки должна иметь атрибут rel=»sidebar» . Но если этот атрибут ставить сразу по умолчанию, то некоторые браузеры типа Netscape будут отрабатывать функцию добавления в закладки дважды: первый раз через скрипт и второй раз через атрибут rel. Поэтому придется изменять атрибуты ссылки динамически, предварительно определив браузер проверкой типа объекта opera.

Если ни один из перечисленных способов не сработал, то не надо выдавать сообщение об ошибке или еще хуже, молча завершать выполнение скрипта. Будет гораздо правильнее показать пользователю доступный вариант решения задачи, например предложить вручную нажать комбинацию клавиш Ctrl+D .

Теперь, когда у нас есть все исходные данные, можно написать кроссбраузерный скрипт для добавления страницы в закладки. У меня получился вот такой:

// Добавить в Избранное function add_favorite(a) { title=document.title; url=document.location; try { // Internet Explorer window.external.AddFavorite(url, title); } catch (e) { try { // Mozilla window.sidebar.addPanel(title, url, ""); } catch (e) { // Opera if (typeof(opera)=="object") { a.rel="sidebar"; a.title=title; a.url=url; return true; } else { // Unknown alert("Нажмите Ctrl-D чтобы добавить страницу в закладки"); } } } return false; }

Добавить в Избранное

Рабочий пример реализации вы можете увидеть прямо на этой странице. Использование конструкций try-catch позволяет скрипту правильно отрабатывать в любых нестандартных ситуациях, например в окне IE Tab, открытом в браузере Firefox. Также скрипт корректно работает в различных экзотических браузерах, которые нельзя однозначно определить через UserAgent или DOM-свойства . Всякие хваленые коммерческие поделки типа DLE в этой ситуации молча обламываются.