Спокойный bookmark htm. Bookmark OS — мощный и удобный менеджер закладок

Управлять содержимым html страницы можно при помощи букмарклета. В данной заметке опишу простые примеры букмарклета и его использование для заполнение веб форм.

Для написания статьи использовался Crome, возможно в других браузерах есть свои особенности. Самым простым примером использования букмарклета является отображение сообщения в браузере. Для этого, например, можно открыть www.google.ru и после открытия страницы в строку адреса вместо www.google.ru ввести такой код

Javascript:alert("Привет мир");

И нажать Enter, в окне браузера появится сообщение

Что бы не вводить код постоянно в строку адреса браузера и иметь его постоянно под рукой возможно добавить код этой функции в закладки.

Для это есть несколько вариантов, опишу два из них. Первый создать закладку вручную в меню создания закладок, второй написать html страницу со специально оформленной ссылкой, которую перетащить мышью на панель закладок.
Рассмотрим первый вариант. В Chrome зайдите в меню закладок.


Нажмите "Добавить страницу в закладки" появиться следующее окно

В нем нажмите кнопку "Изменить". И в появившемся окне введите название для закладки и код функции.

После этого нажимаете кнопку "Сохранить". Теперь эта закладка появляется в панели закладок. И для вызова этой функции можно на любой странице нажать на эту закладку.
Рассмотри второй вариант добавления закладки из html страницы. Для этого создадим пустой текстовый файл с названием AddBookmark.html. и вставим в него следующий код:

AddBookmark Сообщение "Привет мир!"

Особенностью ввода JavaScript кода является замена кавычек на их символьное описание ". Теперь откройте страницу в браузере.
Ссылка на букмарклет выделена синим, мышкой перетащите её на панель закладок, если панель закладок не отображается то это можно поправить - https://support.google.com/chrome/answer/95745?hl=ru


Теперь рассмотри некоторые примеры.

1.Изменение цвета фона. В фал html добавьте еще одну ссылку
Серый фон
Перетащите её на панель закладок. При запуске закладки на странице www.google.ru получится такой результат:

2.Заполним данные в текстовом поле и поменяем его класс.

Для заполнения текстовых полей, нажатий на кнопку необходимо знать или их name или id. Что бы найти имя поля нужно на него нажать правой кнопкой мыши и выбрать "Посмотреть код". В правой части окна появиться окно с кодом и выделенным текстовым элементом.


В нашем случае находим атрибут id и запоминаем его, у нас это lst-ib. Теперь зная id текстового поля добавим на страницу html новую ссылку на буркмаркет:

Заполнение гугл поиска В нашем случае меняется класс текстового поля на MyClass и он заполняется текстом "Привет мир!".
Добавим новую закладку на панель задач. И перейдём на www.google.ru выполним букмарклет и в результате получим.

Для проверки изменения класса опять откроем код элемента, ранее класс был такой class =" gsfi " теперь class ="MyClass "

Всем привет, сегодня речь пойдет про использование букмарклета, или закладки для браузера.

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

Примером может служить герой сегодняшней заметки, который расположен по адресу http://ulizko. com/demo/allthat/ . Инструкция по применению:

  • Перетащите ссылку «link» на панель закладок или щелкните по ней правой кнопкой мыши и выберите пункт меню «добавить в избранное».
  • Зайдите на какой-нибудь сайт, вроде http://twitter. com , и нажмите на эту закладку (ну или на избранное).
  • Появится окошко, в которое можно ввести данные. Вообще, предполагается, что это будет интерфейс добавления желаний в вишлисты (предварительно созданные на каком-то сайте), настроить триггеры оповещений, и прочее. Есть даже какая-то валидация начального уровня. И налажен обмен данными с сервером - то есть, на любом домене к вам приходит список ваших вишлистов, а ваше новое желание с любого домена долетит на крыльях любви к вишлисту и уютно устроится в его объятьях .

    Но. Мы сегодня не об этом, а о том, как делать такие штуки в принципе.

    Прежде чем перейти непосредственно к разбору кода, хотелось бы ответить на вопрос (который мне никто не задавал:), а именно, "Какие возможности дает букмарклет?". Правильный ответ - любые. Так как мы получаем возможность подгрузить любой скрипт, мы можем сделать с клиентской страничкой все, что угодно. Например - сделать «выносной» виджет, в котором на любой страничке можно будет добавить запись в блокнот или таскменджер. Или вообще сделать весь таскменеджер выносным. Что тоже важно, они будут работать практически везде - это не плагины к firefox’у и не виджеты к opera. Букмарклетам не важно (ну, почти:), какая у вас ОС или браузер. В общем, есть простор для фантазии.

    Итак, как же делать эти самые букмарклеты?
    Очень просто: надо создать на страничке элемент anchor с атрибутом href, содержащим javascript-код. Если перевести на русский, то надо сделать вот такую ссылку, адрес которой, по большому счету, и будет букмарклетом:

    Bookmarklet

    Для того, чтобы javascript код в адресе ссылки заработал, надо добавит перед ним слово javascript: . Если мне не изменяет мой склероз, это называется «указание псевдопротокола javascript». Еще одна важная деталь - если ваш код вернет какое-то значение, то браузер воспримет его в качестве адреса, по которому нужно перейти, и уйдет с текущей страницы. Чтобы избежать этого, не возвращайте значения, то есть допишите в конец скрипта void 0; , либо оберните весь код в анонимную функцию, невозвращающую значения - (function(){... ваш код мог бы быть здесь...})() .

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

    Единственную вещь, которую нам еще нужно знать - это то, что все браузеры ограничивают максимальную длину кода букмарклета. И, подобно тому, как скорость каравана равна скорости самого медленного верблюда, так и максимальный размер кроссбраузерного букмарклета равен ограничению, наложенному IE 6 SP2, то есть, 488 символам.

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

    Так поступил и я. Вот код моего букмарклета в человекоадаптированном виде:

    (function () {
    // создаем новую внутреннюю переменную a (лучше в данном случае использовать короткие идентификаторы)
    // и сразу же добавляем свой объект в глобальный объект window, и записываем в него данные, которые уникальны
    // для каждого пользователя (ведь они сгенерированы сервером для пользователя перед тем, как он добавил этот букмарклет к себе)
    var a = window.allThat = {
    userId: "123345456" ,
    server: "http://mysite.com/" ,
    script: document .createElement("script" ), // создадим и запомним тэг скрипт,
    // который сгрузит нам код нашего приложения - мы его потом удалим, если пользователь нажмет кнопку "закрыть"
    css: document .createElement("link" ) // аналогично
    },
    /* динамически создаем и добавляем в DOM элементы: */
    h = document .getElementsByTagName("head" );
    a.css.rel = "stylesheet" ;
    a.css.href = a.server + "css/bookmarklet.2.css" ;
    h.appendChild(a.css);
    a.script.src = a.server + "js/bookmarklet.7.js" ;
    h.appendChild(a.script);
    h=null ;
    })();

    * This source code was highlighted with Source Code Highlighter .

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

    Если интересно, вот

    10.5.4 Объект Bookmark

    Объект Word.Bookmark, применение закладок в шаблоне, получение из объектов Bookmark объектов Selection и Range

    Объект Bookmark - это просто закладка. На практике это - самый удобный способ навигации по документам, созданных при помощи шаблонов (например, отчетов). Принципиальное отличие его от объектов Selection и Range заключается в том, что все выделения и диапазоны теряются при закрытии документа (объекты Range вообще существуют только во время работы создавшей их процедуры, а закладки сохраняются вместе с документом. Если документ создан на основе шаблона, то все закладки, которые были определены в шаблоне, будут определены и в созданном на основе этого шаблона документе.

    Создать закладку (меню Вставка -> Закладка ) намного проще, чем считать количество символов для объекта Range от начала документа/абзаца/предложения, или выполнять операции Move() (MoveDown(), MoveRight(), MoveNext()) для объекта Selection. Кроме того, если вы будете исправлять шаблон (а делать это на практике приходится очень часто), вам, скорее всего, не придется править код для определения объектов Selection и Range.

    Функциональность объекта Bookmark невелика. Свойств и методов у этого объекта намного меньше, чем у объектов Selection и Range. Однако обычно никто и пытается использовать объект Bookmark для работы с текстом напрямую. Из объекта Bookmark очень просто получить объект Selection (при помощи метода Select()) или объект Range (при помощи свойства Range()) - и дальше можно пользоваться уже свойствами и методами этих объектов, например:

    ThisDocument.Bookmarks("Bookmark1").Select

    MsgBox Selection.Text

    Создавать объекты Bookmark программным способом необязательно, но если есть необходимость, то можно использовать метод Add() коллекции Bookmark:

    ThisDocument.Bookmarks.Add Name:="temp", Range:=Selection.Range

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

    Некоторые важные свойства объекта Bookmark:

    • Empty - если это свойство возвращает True, то это значит, что закладка указывает на точку вставки, а не та текст;
    • Name - имя закладки. Очень удобно, что найти нужную закладку в коллекции закладок можно не только при помощи индекса (номера) закладки, но и по ее имени.
    • Range - возвращает объект Range на месте этой закладки.
    • Start , End , StoryType - аналогично таким же свойствам у объекта Selection.

    Методов у объекта Bookmark всего три - Copy(), Delete() и Select(). Copy() - создает закладку на основе существующей, Delete() - удаляет ее, а Select() - выделяет то, на что ссылается закладка.

    Путешествуя в бурных волнах Интернет, дабы не забыть место, куда волей или неволей судьба забросила пользователя, он делает закладки в своем любимом броузере. Они называются Bookmarks или Favorites. Bookmarks (Закладки) или Favorites (Избранное) - это набор ссылок (URL) на интернет-ресурсы, как правило, целые сайты или отдельные страницы. Microsoft Internet Explorer сохраняет каждую ссылку в отдельном файле, Netscape использует для этого html-файл bookmark.htm. Для работы с большим количеством закладок одного броузера становится недостаточно. Помочь пользователю призваны специальные программы для работы со ссылками.
    Они подразделяются на:


    Программы для организации коллекции ссылок (менеджеры);

    Программы для конвертации ссылок из Microsoft Internet Explorer в Netscape, HTML-страницу и наоборот;

    Программы для проверки "живучести" ссылок и также для определения изменения ресурсов на указанных страницах.
    Рассмотрим эти категории более подробно на примерах лучших программ данного направления.. URL Managers (Менеджеры ссылок)Compass 2.82
    Довольно известный менеджер закладок с большими возможностями.

    Поддерживает форматы трех основных броузеров: Netscape, Microsoft Internet Explorer, Opera и другие менее распространенные форматы.


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


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


    Производит поиск мертвых ссылок и многое другое. По своим функциональным возможностям это одна из лучших программ в этом жанре.

    Linkman 6.0.1.45
    Еще один довольно известный менеджер по закладкам. Позволяем импортировать закладки из Microsoft Internet Explorer, Netscape, а также позволяет настроить импорт ссылок пользовательского формата. Экспорт в Microsoft Internet Explorer, Netscape, HTML, поддерживает собственный формат. Содержит шаблоны для экспорта в html-файл, которые можно задавать самому. Содержит две уже готовые базы ссылок на ресурсы интернета, в том числе одну по производителям компьютерного "железа". Позволяет задавать рейтинг от 0 до 5 для каждой ссылки.

    Поиск дубликатов. Выборка ссылок на локальном диске, удовлетворяющих заданным условиям.


    Проверка ссылок на "живучесть" и изменение содержания страниц.


    Программа содержит большое количество настроек и по своим характеристикам не уступает Compass"у.

    URL Organizer 2.4.5
    Снова, как видно из названия, менеджер закладок. Автор программы ограничился функциями менеджера, направив основные усилия по разработке настраемого пользовательского интерфейса и удобства работы с программой, благодаря большому количеству комбинаций горячих клавиш и другим настройкам.


    Программа позволяет импортировать/экспортировать закладки трех основных броузеров: Netscape, Microsoft Internet Explorer и Opera. Содержит небольшую базу готовых закладок.

    URL Converters (Программы конвертации закладок)Bookmark Converter 2.9
    Программка для конвертации закладок Netscape в избранное Microsoft Internet Explorer.


    и наоборот.


    Ничего лишнего. Просто и со вкусом. Поддерживает режим командной строки. Интуитивно-понятный интерфейс. Умеет также синхронизировать ссылки между Netscape и Microsoft Internet Explorer. Нет лимита на размер коллекции, с моими пятью тысячами ссылок справилась великолепно.

    Bookmark Magic 2.31
    Еще один конвертер закладок. Конвертация между Microsoft Internet Explorer, Netscape и html-файлом Программа умеет искать дублирующие ссылки. Есть сортировка по описаниям. Основные функции программы также доступны через командную строку.

    Программы поиска "мертвых" ссылокSiteChecker 3.5
    Программа проверяет все ссылки на вашем сайте (html-файлы, рисунки и т.д.), включая файлы, на которые никто не ссылается и ссылки на внешние ресурсы. Программа может работать локально или через FTP.


    Гибкая система настроек результирующего отчета. На сайте производителя доступно подробное описание: линк


    SiteMapper 1.04
    SiteMapper от Trellian Software (создавшем линейку продуктов Wolf ) тщательно проанализирует ваш сайт, проиндексирует все ресурсы и создаст детальный рапорт. Проверяет ссылки на отсутствующие страницы и изображения. Пример рапорта можно посмотреть здесь . Программа отмечена многочисленными наградами и, по-видимому, не зря.


    Xenu"s Link Sleuth 1.1f
    Еще одна программа для проверки сайта на предмет наличия "мертвых" ссылок. Проверяет простые ссылки, рисунки, фреймы, плагины, таблицы стилей, скрипты, Java-аплеты и т.д. Выдает подробный рапорт с сортировкой по заданным критериям, если отметить все опции на больших сайтах, выдает рапорты размером несколько мегабайт.


    Поддерживает SSL соединения, FTP, Gopher, redirect"ы. Возможность перепроверки ссылок на случай ошибок во время случайных сбоев сети. Программа отмечена множеством наград. На странице автора имеется подробное описание и ответы на вопросы.

    CopyURL 2.30
    Говоря о ссылках, нельзя не рассказать о еще одной замечательной программке, которая не вписывается в указанные выше категории, но часто, несмотря на свои размеры, облегчает жизнь. Это бесплатное приложение CopyURL от Moon Software . Оно позволяет добавлять в проводник три дополнительных меню: Copy URL, Copy Link и Copy Name, появляющиеся при нажатии на URL-файле правой кнопки мыши.


    В результате выбора этих пунктов в буфер обмена скопируется следующая информация:
    Copy URL:
    Copy Link: сайт
    Copy Name: сайт:
    Можно задавать сразу несколько URL. Скачать CopyURL 2.30 можно отсюда

    Описание
    Устанавливает или возвращает закладку, которая однозначно определяет текущую запись в Recordset .

    Значение
    Задаваемое или возвращаемое значение определяются строковым выражением или выражением типа Variant , значением которого является допустимая закладка. Типом данных является массив Variant элементов типа Byte .

    Замечания
    Для объекта Recordset , созданного исключительно на основе таблиц ядра базы данных Microsoft Jet , свойство Bookmarkable имеет значение True , и допускается использование свойства Bookmark для объектов Recordset . Например, не допускается использование закладок в любом объекте Recordset , созданном на основе присоединенной таблицы Paradox , в которой не определен ключ.
    При создании или открытии объекта Recordset каждая из его записей получает уникальную закладку. Для того чтобы запомнить положение текущей записи, следует присвоить текущее значение свойства Bookmark переменной. Для быстрого возвращения к сохраненному в переменной указателю текущей записи в любое время после перехода на другую запись следует указать в значении свойства Bookmark объекта Recordset значение этой переменной.
    Число возможных закладок в наборе записей не ограничивается. Для создания закладки, определяющей запись, отличную от текущей записи, следует перейти на нужную запись, а затем присвоить значение свойства Bookmark строковой переменной, которая будет указывать на нужную запись.
    Перед использованием свойства Bookmark следует проверить значение свойства Bookmarkable объекта Recordset , которое определяет, поддерживает ли данный набор записей использование закладок. Если свойство Bookmarkable имеет значение False , объект Recordset не поддерживает закладки, и обращение к свойству Bookmark приведет к возникновению перехватываемой ошибки.
    Если с помощью метода Clone создана копия объекта Recordset , то значения закладок для исходного объекта Recordset и его копии являются идентичными и допускают взаимную замену. Однако нельзя использовать подобным образом закладки из других объектов Recordset , даже если они были созданы на основе одного объекта или с помощью одинаковой инструкции SQL .
    При попытке задать для свойства Bookmark значение, представляющее удаленную запись, возникает перехватываемая ошибка.
    Значение свойства Bookmark не идентично номеру записи.

    Пример
    Следующая программа использует свойства Bookmark и Bookmarkable для запоминания позиции записи в объекте Recordset и возвращения к этой записи.



    Есть вопросы?

    Сообщить об опечатке

    Текст, который будет отправлен нашим редакторам: