Просмотр в любом броузере

Добавлено 18.10.2007 | Инструменты

Лицо Качанова и ссылка на информацию о нем Вы, как разработчик, наверное не раз попадали в такую ситуацию: верстаете страницу и просматриваете результат работы, скажем, в Internet Explorer, затем те же страницы вам надо посмотреть в Opera и в Firefox. Для этого URL из адресной строки Internet Explorer-а копируете в буфер, затем запускаете Opera, URL вставляете в адресную строку Opera и нажимаете Enter. Иногда даже просто гуляя по Интернету, интересно бывает посмотреть на один и тот же сайт в нескольких броузерах. А если у вас на машине установлен такой скромный зоопарк?

Что же делать? Запускать их все один за другим и копировать URL в каждый? Неудобно! Медленно! Утомительно! Данную проблему можно решить.

Mozilla и Firefox

Для Firefox/Mozilla есть расширение (extension) . Откройте эту ссылку в Firefox/Mozilla, выберите Install, загрузите расширение и перезапустите броузер. Теперь в контекстном меню страницы добавился пункт "View this page in IE". Отныне работая в Firefox/Mozilla вы можете легким движением мышки моментально открыть ту же страницу в IE: Internet Explorer сам запустится и сам откроет URL, открытый в данный момент в Firefox.

Покопавшись в открытом исходном коде расширения, я думаю вы без труда догадаетесь, как сделать такое же расширение для запуска из Firefox Opera или любого другого броузера.

Internet Explorer

Для Internet Explorer решение несколько менее тривиальное. Я воспользовался малоизвестным механизмом расширения MenuExt. Подробно о нем я рассказывал в предыдущих статьях.

Файлы, необходимые для установки этой функции, я [RAR архив 10.8 кб]. Загрузите архив на свою машину, сохраните его во временном каталоге и распакуйте.

Для начала добавим в контекстное меню запуск 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%\defaults\standard_menu.ini (где %OPERA% - это каталог, в котором установлен броузер). Файл standard_menu.ini поделен на секции, каждая из которых отвечает за настройки какой-то части интерфейса Оперы.

Чтобы открывать ссылки из Оперы в других броузерах, вам надо добавить в [Link Popup Menu] строки:

Item, "Открыть в IE" = Copy link & Execute program, "iexplore.exe","%c"
Item, "Открыть в Firefox" = Copy link & Execute program, 
      "C:\browsers\firefox.0.8\firefox.exe","%c"

Чтобы открывать документы из Оперы в других броузерах, добавьте в [Document Popup Menu] строки:

Item, "Открыть в IE" = Execute program, "iexplore.exe","%u"
Item, "Открыть в Firefox" = Execute program, 
      "C:\browsers\firefox.0.8\firefox.exe","%u"

Чтобы открывать ссылки, поставленные на картинки, из Оперы в других броузерах добавтьте в [Image Link Popup Menu] строки:

Item, "Открыть в IE" = Copy link & Execute program, "iexplore.exe","%c"
Item, "Открыть в Firefox" = Copy link & Execute program, 
      "C:\browsers\firefox.0.8\firefox.exe","%c"

standard_menu.ini, который содержит добавленные пункты. Вам надо отредактировать все строки, начинающиеся с Item, "Открыть в IE" и Item, "Открыть в Firefox", заменив пути к вашим броузерам. После этого файл standard_menu.ini надо положить в каталог %OPERA%\defaults\.

Спонсор: работящие домработницы