ну тады мож абмануть, на время работы переименовывать ие, а спец проекту давать имя ие, хотя вроде там нужна поддержка командной строки.
Добавлено (04 Октябрь 2010, 02:07) --------------------------------------------- вот че нагуглил, попробуйте
Quote
Открыть в новом окне используйте параметр типа DWORD NoOpeninNewWnd со значением 1 в разделе HKCU\Software\Policies\Microsoft\Internet Explorer\Restrictions
Добавлено (04 Октябрь 2010, 02:11) --------------------------------------------- ну и еще, отключить яву.
Добавлено (04 Октябрь 2010, 02:22) ---------------------------------------------
Далее указаны настройки для открытия ссылок из других программ. Доступны 3 варианта: 1. – Открыть ссылку в новом окне, 2. – Для открытия ссылки использовать новую вкладку в текущем окне, 3. – Использовать текущую вкладку текущего окна для открытия ссылки.
; При открытии ссылок из других программ использовать
Открыть в новом окне используйте параметр типа DWORD NoOpeninNewWnd со значением 1 в разделе HKCU\Software\Policies\Microsoft\Internet Explorer\Restrictions
такая штука тоже не работает - всеравно открывается не в проекте ммб
Условие: Нам нужно узнать ссылку из href, после небольших исследований, оказалось, что это свойство меняется динамически по событию onmousedown. Все ссылки подчинены классу agp. Решение: Переопределить onmousedown, прогнать параметры 10 ссылок на странице, проидентифицировать их от 0 до 10, сделать перенаправление на эту ссылку, вернуть false, что предотвратить открытие нового окна
Не хочу читать тему, просто напишу немного мыслей и предложений:
это зря. подход хороший, но представь, что в яндексе откроется любой другой сайт, со своими заморочками. для каждого сайта не напишешь обработку.
Добавлено (04 Октябрь 2010, 09:25) --------------------------------------------- да в общем, понятно что обрабатывать данные для браузера это бесперспективно, нужно повлиять на сам системный браузер.
шерстить все ссылки документа? мы уже думали, но решили что сделать универсальный скрипт для любого сайта будет какбэ проблематично. на каждом сайте свои заморочки могут быть. проще както на IE повлиять. ну ты попробуй все равно...
ну в общем ты понял в чем проблема. надо прошерстить все ссылки и если есть _blank поставить _self, а лучше вообще во всех ссылках это проставить или "обнулить". а то мож с другими типами окон такаяже лажа. но проблема эта может еще быть не только с ссылками по идее но и другими активными элементами или скриптами.
ну в общем ты понял в чем проблема. надо прошерстить все ссылки
Quote (Sower)
Sower
вполне прав, и делает правильно, пользуясь объектной моделью докумунта, getElementsByTagName('a'); это дает все теги а в любом документе. Только не все переходы идут через а, ява то же может послать, так что надо просмотреть в каких местах может быть переход в новое окно, и через дом их переписывать. Правда и тут возможны камни, переход может появлятся после клика, при расшифровке явой, то есть в дом на момент клика перехода может и не быть. В общем энто фсе ананиззм, но помучатся будет полезно.
короче если через js, то вроде единственный способ - это загнать код в переменную и с помощью регулярных выражений выделить команду window.open, извлеч параметры окна и создать в текущем например
Code
document.onclick = function go (event){ var code = event.target.onclick; ... здесь регулярка }
содержимое переменной code будет именно текстовым, такчто, помоему вот оно решение
Добавлено (04 Октябрь 2010, 12:18) --------------------------------------------- можно сделать ради интереса, но опять же - это не выход, в коде onclick может быть ссылка на другую функцию, а в той еще на одну, и только через функций 10 происходит открытие, скорее я ошибался, что на js можно это сделать
Добавлено (04 Октябрь 2010, 12:20) --------------------------------------------- DEMBEL, а VBScript что-нибудь может с этим сделать?
DEMBEL, а VBScript что-нибудь может с этим сделать?
какая разница, будет такая же фигня
Quote (decoder2)
но решения я так понял видимо нету?
полурешения я бы так сказал
Добавлено (04 Октябрь 2010, 12:50) ---------------------------------------------
Quote (DEMBEL)
какая разница, будет такая же фигня
да и потом, представь например рекламный баннер, показываемый лохматым шифрованным скриптом через фрейм...
Quote (decoder2)
решения я так понял видимо нету?
самое реальное что можно сделать - просто заменить скриптом все обычные ссылки типа <a href> чтобы открывались не в новом окне. в остальных случаях браузер будет реагировать открытием окна. Дополнительный вариант - отключать IE на время работы программы (путем переименования файла iexplore.exe, но это не вариант т.к. он защищен, остается как-то настроить IE или систему чтобы IE не лез со своими окнами. На 100% данная задача представляется мне нерешаемой в рамках ммб.
да просто изначально все было затеяно под информационный киоск с тачскрином (паличиками управлять), но как оказалось попадаются "продвинутые" юзеры котрые умудряются через IE на диск выйти - а там чего хотишь того и ломай %-), а тут все выползло в разглагольствования по поводу ссылок... всего то надо чтоб из ммб не выходил в стандартные проги... сорри если кого оскорбил (неумышлял того!)