Забыли пароль?
Запросите новый здесь.

Голосование
Тип Вашего интернет-проекта?

Новостной ресурс
Новостной ресурс
0% [0 Голосов]

Тематический/информационный ресурс
Тематический/информационный ресурс
18% [2 Голосов]

Социальная сеть/блог
Социальная сеть/блог
9% [1 Голос]

Корпоративный портал
Корпоративный портал
0% [0 Голосов]

Интернет-магазин
Интернет-магазин
0% [0 Голосов]

Промосайт
Промосайт
9% [1 Голос]

У меня несколько сайтов
У меня несколько сайтов
36% [4 Голосов]

У меня вообще нет сайта
У меня вообще нет сайта
0% [0 Голосов]

Другое
Другое
27% [3 Голосов]

Голосов: 11
Вы должны авторизироваться, чтобы голосовать.
Начат: 22.09.2016 06:03

Архив опросов
Случайная тема
Друзья проекта
Unlogic W0rst Lab
All Fusion :: Плагины, моды, темы оформления для 6 и 7 версий PHP-Fusion
Система Smart для PHP-Fusion
Создание сайтов artcell
Миничат
Только пользователи могут отправлять сообщения.

jikaka
OfflineAdmin
· 26.04.2017 15:53
ab

Warhangel
OfflineAdmin
· 25.04.2017 23:30
ммм вообще надо организовать раздел проверенных сервисов

Warhangel
OfflineAdmin
· 25.04.2017 23:27
так вроде в разделе рекламы ag

Alex
Offline
· 25.04.2017 18:23
Костя дай права удалять темы и банить ботов. подчищать буду то что насрут

jikaka
OfflineAdmin
· 20.04.2017 06:24
Polarfox, шляпа там

Архив миничата
Сейчас на сайте
» Гостей: 26

Гости:
» [Ваш IP] 19:46:51
/Статьи
» 51.255.71.113 19:46:50
/Поиск
» 46.229.168.65 19:46:34
/Поиск
» 46.229.168.74 19:46:25
/Поиск
» 46.229.168.70 19:46:13
/Поиск
» 46.229.168.66 19:45:59
/Поиск
» 46.229.168.67 19:45:55
/Ссылки
» 164.132.161.94 19:45:42
/Поиск
» 46.229.168.73 19:45:31
/Поиск
» 217.182.132.184 19:45:29
/Поиск
16 - не показано

» Всего пользователей: 1,281
» Новый пользователь: baklan
В базе имеется
аддонов: 949
тем: 137
Иерархия статей
Кроссбраузерное добавление страницы в закладки

Добавить страницу в закладкиКроссбраузерное добавление страницы сайта в закладки реализуется с использованием 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.

Теперь, когда у нас есть все исходные данные, можно написать кроссбраузерный скрипт для добавления страницы в закладки. Чтобы не выносить скрипт в отдельный файл, открываем директорию /includes и в файле jscript.js в самом низу дописываем такой код:

Code
/***********************************************
* Add bookmark
***********************************************/
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;
a.href=url;
return true;
}
else {
// Unknown
alert('Нажмите «Ctrl+D», чтобы добавить страницу в закладки');
}
}
}
return false;
}

Сохраняем, закрываем. В место, где необходимо вставить ссылку на добавление закладки, пишем следующий код:

Code
<a href="#" onclick="return add_favorite(this);">Добавить страницу в закладки</a>

На этом техническая часть закончена.

Информация к размышлению

Хотелось бы отметить два момента.

Первое: качественно оформить ссылку можно простейшими стилями HTML, обязательно добавив узнаваемый значек. Например, вот такой Добавить страницу в закладки

Второе: будет целесообразно вставлять эту ссылку на все страницы так же, как это делают с широко известными аддонами для закладок соцсетей. Для этого необходимо найти место для ссылки в используемой Вами теме в разделе /themes, либо в файлах "включения" из директории /includes.

На этом всё. Удачи в разработках! Улыбаюсь


Статья добавлена 07.12.2012 в 05:26:10

Подготовлено для rusfusion.ru с использованием материалов из открытых источников.


Поделиться этой статьей
Социальные закладки: Vkontakte Odnoklassniki Mail.ru Facebook Google Tweet This
URL:
BBcode:
HTML:


#1 | Rush 09.12.2012 19:42
Avatar
Отсутствует
Администратор
Активный
С 31.08.2010 14:41
ctrl+d - самое кроссбраузерное решение)
не вижу хрома, сафари, и вообще сниппет уже стар походу
AnnetLab | @annetlab | GitHub Addons repo | AL Shop - open source e-shop for PHP-Fusion | PHPtoday.ru
www.cwer.ru/files/u215323/skach0ibtq6.gif
Добавить комментарий
Пожалуйста, залогиньтесь для добавления комментария.
Рейтинги
5 (Отлично!) - 1 Голос

Рейтинг доступен только для пользователей.

Пожалуйста, авторизуйтесьили зарегистрируйтесь для голосования.