Как отключить предупреждения JavaScript в элементе управления WebBrowser?

Я использую элемент управления WebBrowser и mshtml.dll. Когда я имитирую щелчок по ссылке <a href='..'>..</a>, WebBrowser показывает диалоговое окно с предупреждением JavaScript:

Невозможно переместить фокус на элемент, так как он невидим, отключен или не может иметь фокус.

Код, который я использую для имитации клика:

anchor.click();

...где anchor имеет тип: HTMLAnchorElementClass

Поэтому я хочу отключить все предупреждения JavaScript в моем компоненте WebBrowser. Как я могу это сделать?


person Community    schedule 03.10.2009    source источник
comment
может ли кто-нибудь с достаточным количеством представителей помочь и переписать вопрос ОП на правильный английский для большей ясности   -  person code_burgar    schedule 03.10.2009
comment
Теперь немного лучше, я надеюсь! :-)   -  person Shog9    schedule 03.10.2009


Ответы (3)


Я не уверен, что вы имеете в виду формы Windows WebBrowser, но имеет ScriptErrorsSuppressed для отключения сообщений об ошибках сценария.

person Phaedrus    schedule 03.10.2009

Вы должны найти место, где вы делаете anchor.click();, и либо удалить его, либо заменить на if(anchor.clientHeight != 0){anchor.click();}.

person Esteban Küber    schedule 03.10.2009

Это конкретное предупреждение можно обойти, сделав элемент ссылки частью страницы и видимым.

Вызов метода click() на самом деле делает больше, чем выполняет обработчик onclick и перемещается по браузеру, он также фокусирует элемент — точно так же, как когда происходит настоящий щелчок. Если элемент находится за пределами экрана, такое поведение невозможно.

Просто прикрепите ссылку к телу сообщения, чтобы это предупреждение не отображалось.

person levik    schedule 03.10.2009