Как стать автором
Обновить

Комментарии 15

Такие потребности чаще всего возникают когда надо встроить окно браузера в другое приложение. Тут IE ActiveX или .NET WebBrowser самое простое решение (ну да, если windows-only).
Принцип будет схожим, в том же Chrome стандартные страницы аналогично строятся из шаблона dll. Только для открытия потребуется найти библиотеку взаимодействия с браузером (лишняя сторонняя библиотека, к примеру, можно взять Selenium) Ну а проще всего стандартные вызовы браузера без API.
А чем плох вариант просто, и более кроссбраузерно, открыть новое окно и построить там документ (в частности, с использованием js-шаблонизатора)? Или, в ограниченных объемах, передать html туда сразу, через data protocol?
Мы так и делаем, открываем новое окно и строим документ, только используя шаблон в dll. Как по мне, такой вариант более оптимален, нежели использование js. Хотя бы потому, что второй часто бывает отключён у конечного пользователя в целях безопасности. А использование data-protocol, как вы уже отметили, накладывает ограничение на объём данных.
А вас не беспокоит, что у конечного пользователя в большинстве случаев может быть «отключен» ИЕ, который, к слову, уже давно не является самым популярным браузером? Или это разработка из тех, что делаются исключительно под какие-то, основанные на ИЕ и Винде, решения для корпоративного сектора, из-за которых пользователям потом нельзя поставить другой браузер?
Да, теоретически IE может быть отключён. Но, полезных последствий отключения js гораздо больше, нежели IE — поэтому наткнутся на неработающие скрипты несравнимо вероятнее.
То, что IE он не самый популярный не означает, что он реже встречается установленным на ПК. Превалирующие большинство людей, устанавливая браузер (отличный от продукта Microsoft) на свой вкус, не трогают IE. Отсюда следует, что, используя Explorer, почти всегда можно уверенно сказать о получении пользователем результатов работы. Однонаправленность в сторону ОС, конечно, опровергать не буду.
Да, а разве ваш вариант будет работать с отключенным js?
Да, он работает с отключёнными активными сценариями.
Не понятно. То есть вот этот кусок кода (он же на js?) в посте — это не «активный сценарий»? А что это тогда такое, и почему ИЕ считает, что его можно исполнять?
Нет, он на C#. В начале статьи это указано. Это код использовался в консольном приложении, но встроить его можно куда угодно и на многих языках.
Да где вы таких пользователей то берете у которых JS отключен?
Это гипотетический пример. Причём, очень правдоподобный. Неужели ни разу не встречали людей уделяющих этому моменту внимание?
Нет. Среди реальных людей из своего окружения не знаю ни одного кто бы отключал JS.
На хабре, один или два отписывались что отключают.

Но как они живут то в современном нете?
Да, их количество неумолимо падает с появлением новых методик реализации безопасности, однако думается мне, что их ещё довольно много.
Предполагаю, что скучно, но безопасно. Прошу прощения за пример, но это как заниматься любовью с «защитой»: волноваться не о чем, но ощущения не те. :)
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории