Вы, как разработчик, наверное не раз попадали в такую ситуацию: верстаете страницу и просматриваете результат работы, скажем, в Internet Explorer, затем те же страницы вам надо посмотреть в Opera и в Firefox. Для этого URL из адресной строки Internet Explorer-а копируете в буфер, затем запускаете Opera, URL вставляете в адресную строку Opera и нажимаете Enter. Иногда даже просто гуляя по Интернету, интересно бывает посмотреть на один и тот же сайт в нескольких броузерах. А если у вас на машине установлен такой скромный зоопарк?
Что же делать? Запускать их все один за другим и копировать URL в каждый? Неудобно! Медленно! Утомительно! Данную проблему можно решить.
Mozilla и Firefox
Для Firefox/Mozilla есть расширение (extension) "View in IE". Откройте эту ссылку в Firefox/Mozilla, выберите Install, загрузите расширение и перезапустите броузер. Теперь в контекстном меню страницы добавился пункт "View this page in IE". Отныне работая в Firefox/Mozilla вы можете легким движением мышки моментально открыть ту же страницу в IE: Internet Explorer сам запустится и сам откроет URL, открытый в данный момент в Firefox.
Покопавшись в открытом исходном коде расширения, я думаю вы без труда догадаетесь, как сделать такое же расширение для запуска из Firefox Opera или любого другого броузера.
Internet Explorer
Для Internet Explorer решение несколько менее тривиальное. Я воспользовался малоизвестным механизмом расширения MenuExt. Подробно о нем я рассказывал в предыдущих статьях.
Файлы, необходимые для установки этой функции, я запаковал в архив [RAR архив 2.71 кб]. Загрузите архив на свою машину, сохраните его во временном каталоге и распакуйте.
Для начала добавим в контекстное меню запуск Firefox из IE.
Откройте файл "viewinfirefox.html" в текстовом редакторе
Найдите в нем такие строки:
var WshShell = new ActiveXObject("WScript.Shell");
var sFDPath = 'C:\\browsers\\firefox.0.8\\firefox.exe';
var oExec = WshShell.run('"' + sFDPath + '" "' + sFile + '"', 2);
поменяйте строку
var sFDPath = 'C:\\browsers\\firefox.0.8\\firefox.exe';
на путь к Firefox на вашей машине. Обратите внимание на двойные слэши в пути.
Сохраните файл и положите файл viewinfirefox.html
в каталог %WINDOWS%\Web
. (%WINDOWS%
обозначает каталог, в который у вас установлена операционная система. На моей машине это C:\WINNT\
, на вашей может быть - C:\Windows6005\
).
Откройте файл "viewinfirefox.reg
" в текстовом редакторе. Это фрагмент Реестра Windows, который добавляет новый пункт меню в контекстное меню Internet Explorer.
Найдите в файле такую строку:
@="C:\\WINNT\\Web\\viewinfirefox.html"
Поменяйте путь в этой строке на путь к %WINDOWS%\Web, куда вы положили viewinfirefox.html
. Обратите внимание на двойные слэши в пути.
Сохраните файл и дважды щелкните по нему. Ветка автоматически добавится в реестр Windows.
Откройте новое окно IE, зайдите скажем на www.webmascon.com, щелкните вспомогательной кнопкой мыши и убедитесь, что новый пункт меню на месте.
Выберите этот пункт и убедитесь, что Firefox запустился и загрузил ту же самую страницу. Если ничего не произошло, значит вы неправильно указали путь к программе или путь к файлу viewinfirefox.html.
Для того, чтобы добавить пункт "View in Opera", выполните те же операции с файлами viewinopera.html
и viewinopera.reg
.
Что еще можно придумать?
Можно добавить в подменю еще много других броузеров, соблюдайте только чувство меры, в противном случае работать с меню станет неудобно.
Можно добавить запуск по одному щелчку мышки сразу нескольких броузеров (Firefox, Opera, Mozilla, Netscape) или, скажем, всех старых версий Internet Explorer. Для этого надо просто размножить две строки из html-файла, например:
var WshShell = new ActiveXObject("WScript.Shell");
var sFDPath = 'C:\\browsers\\ie.3.0\\iexplore.exe';
var oExec = WshShell.run('"' + sFDPath + '" "' + sFile + '"', 2);
var sFDPath = 'C:\\browsers\\ie.4.01\\IEXPLORE.EXE';
var oExec = WshShell.run('"' + sFDPath + '" "' + sFile + '"', 2);
var sFDPath = 'C:\\browsers\\ie.5.01\\IEXPLORE.EXE';
var oExec = WshShell.run('"' + sFDPath + '" "' + sFile + '"', 2);
var sFDPath = 'C:\\browsers\\ie.5.5\\IEXPLORE.EXE';
var oExec = WshShell.run('"' + sFDPath + '" "' + sFile + '"', 2);
Opera
И в заключение вопрос пользователям броузера Opera: "Как сделать то же самое в Opera?"