Незаменимые инструменты Web-Мастера I

автор: 2000.09.19 Александр Качанов

1. Web Accessories for Internet Explorer 5
2. Microsoft Web Developer Accessories
3. Трюки для умельцев

Можно сказать, что своими утилитами Microsoft раскрыла маленький секрет. Воспользовавшись этим секретом мы сейчас превратим IE в мощное и удобное средство для работы.

Как перестроить поиск

Мне не нравится AltaVista как поисковый сервер. Я предпочитаю www.yandex.ru или www.google.com. Не плохо было бы переключить функцию WebSearch на что-нибудь родное или более удобное. Сделать это - пара пустяков.

На самом деле, когда мы выделяем строку, и вызываем функцию WebSearch, открывается страница с JavaScript-ом, которая "подхватывает" выделенный текст и подает его поисковому серверу как подстроку поиска. Эта страница обитает в каталоге <WINDOWS>\Web\ и называется selsearch.htm. Ее исходный код уместится, как говорится, "на ладони".

<HTML>
<SCRIPT LANGUAGE="JavaScript" defer>
var parentwin = external.menuArguments;
var doc = parentwin.document;
var sel = doc.selection;
var rng = sel.createRange();
var str = new String(rng.text);

var op = new String ("http://www.go.com/Titles?col=WW&qt="+str+"&svx=home_searchbox&sv=IS&lk=noframes");

if (str=="")
alert ("You must select some text to search for first.");
else
open(op);
</SCRIPT>
</HTML>

Обратите внимание на красную строку. Она содержит знакомый нам по всем поисковым серверам URL, в котором на место обычной искомой фразы (после qt=) вставляется переменная str, которая равна выделенному нами фрагменту текста. Теперь отправимся на наш любимый Google, наберем в поле поиска слово "hello", нажмем Enter. В адресной строке автоматически пропишется URL: http://www.google.com/search?q=hello. Не надо иметь много смекалки, чтобы сообразить, что q= соотвествует переменной, которой передается искомая строка.

Осталось только заменить в selsearch.htm строку

var op = new String ("http://www.go.com/Titles?col=WW&qt="+str+"&svx=home_searchbox&sv=IS&lk=noframes");

на

var op = new String ("http://www.google.com/search?q="+str);

Сохраняем файл. Загружаем IE. Открываем любой документ. Выделяем текст. Вызываем контекстное меню. Выбираем WebSearch.... Оп-ля! Теперь IE ищет выделенное слово на www.google.com.

Строка для Яндекса будет выглядеть так:

var op = new String ("http://www.ya.ru/yandsearch?text="+str);

Как сделать Go to URL

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

В качестве фундамента нам послужит все тот же файл selsearch.htm. После некоторой модификации вместо поиска выделенного слова он будет открывать выделенный адрес.

Скопируем selsearch.htm в новый файл openselurl.htm. Заменим:

var op = new String ("http://www.go.com/Titles?col=WW&qt="+str+"&svx=home_searchbox&sv=IS&lk=noframes");

на

var op = new String ("http://"+ str);

Всего-то: взять выделенный текст и прибавить к нему спереди строку "http://".

Зачем добавлять http://, когда в тексте можно выделить адрес вместе с этой частью? Все дело в том, что иногда адреса в статьях ради экономии места имена сайтов пишут без "http://", например, wwww.motorola.com. Или вообще morotola.com. Наш скрипт сможет открыть любой из них. В случае же, когда адрес написан полностью - выделяйте весь адрес кроме "http://".

Итак, страница создана, теперь нужно, чтобы ссылка на нее появилась в контекстном меню IE. Начинается самое страшное - нам придется править Реестр. Откройте ключ:

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt

Здесь примостились уже знакомые нам Hightlight и WebSearch. Сейчас мы создадим для них друга.

1. Создайте новый ключ. Присвойте ему имя "Go to URL". Это имя будет выводиться в контекстном меню.

2. Автоматически в ключе создастся строковая переменная (String Value) с именем Default. В ключе в колонке Type ее тип обозначается как "REG_SZ". Если переменная не создалась, создайте ее сами. Оставьте ее название (Default), а в качестве значения пропишите ей путь к нашему новому файлу (C:\<WINDOWS>\WEB\openselurl.htm).

3. Создайте еще одну переменную. На этот раз двоичного типа (DWORD Value). В ключе появится новая переменная, тип которой в колонке Type обозначается как "REG_DWORD". Обзовите эту переменну "contexts".

4. Присвойте ей шестнадцатеричное (Hexadecimal) значение "10". В десятичном (Decimal) виде оно будет выглядеть как "16".

Закройте Редактор Реестра. Откройте новый экземпляр IE. Загрузите документ. Выделите текст. Вызовите контекстное меню. Оп-ля! Новый пункт на экране.

Вообще-то можно поиздеваться над скриптом: выделить, например, целое предложение и попытаться открыть его каr URL. Ну, ничего катастрофического не произойдет. Просто броузер не сможет открыть сайт с доменным именем "http://Пролетарии всех стран, соединяйтесь/".

Save as HTML

Отыскал на http://forum.ixbt.com/ubb/Forum24/HTML/007600.html

Достало уже постоянно выбирать третий пункт из "сохранить как". Ну не надо мне "сохранять страницу полностью вместе с картинками", а нужен только HTML.

Как это дело пофиксить, чтоб этот пункт в меню "сохранить как" по дефолту встал?

1. В C:\<WINDOWS>\Web\ создаем файл save.htm

2.В нем пишем код:

<html>
<script language="JavaScript" defer>
var str = new String(external.menuArguments.document.selection.createRange().text);
str = str.replace(/[^\w#!. ]/g, "");

if (str == "") str = external.menuArguments.document.title;

external.menuArguments.document.execCommand("SaveAs",false,str.toString());
</script>
</html>

3. Далее в реестре в ветке

HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt

создаем ключ:

Save HTML

а для него следующие значения:

Default (REG_SZ) = "С:\<WINDOWS>\Web\save.htm"
contexts (DWORD) (decimal) = 243

Теперь на любой странице достаточно щелкнуть вспомогательной кнопкой мышки, и выбрать в меню Save as HTML. На экране появится диалоговое окно сохранения файла, в котором уже будут выставлены все нужные параметры.

Ну, вобщем, вы идею поняли... Продолжайте в том же духе.

Александр Качанов

1. Web Accessories for Internet Explorer 5
2. Microsoft Web Developer Accessories
3. Трюки для умельцев

« назад к списку статей

Rambler's Top100
Rating All.BY
Akavita
Valid XHTML 1.0!