Тема: HTA JS: объект WebBrowser
Без определённой конечной цели, для общего развития и расширения кругозора, попробовал поиграться с объектом WebBrowser (clsid:8856F961-340A-11D0-A96B-00C04FD705A2). Но он не хочет со мной играть!
В MSDN описания и примеры - только для C/C#/C++ и VB, поиск в интернете выдал только использование этого объекта для печати (по крайней мере, первые 5 страниц). Сделал тестовый хэтэашник test.hta:
<html>
<body>
<object id="WBobj"
classid="clsid:8856F961-340A-11D0-A96B-00C04FD705A2"
></object>
</body>
<script type="text/jscript" language="JScript">
document.onkeydown=function(){
if(event.keyCode==49){WBobj.navigate('http://www.nix.ru');} // 1
if(event.keyCode==50){WBobj.navigate('http://www.ixbt.com');} // 2
if(event.keyCode==116){ // F5
WBobj.refresh();
event.cancelBubble=true;
return(false);
}else if(event.keyCode==27)window.close(); // Esc
}
WBobj.DocumentComplete=function(){alert('DocumentComplete');}
WBobj.onDocumentComplete=function(){alert('onDocumentComplete');}
WBobj.DownloadComplete=function(){alert('DownloadComplete');}
WBobj.onDownloadComplete=function(){alert('onDownloadComplete');}
WBobj.BeforeNavigate=function(){alert('BeforeNavigate');}
WBobj.onBeforeNavigate=function(){alert('onBeforeNavigate');}
WBobj.BeforeNavigate2=function(){alert('BeforeNavigate2');}
WBobj.onBeforeNavigate2=function(){alert('onBeforeNavigate2');}
WBobj.DownloadBegin=function(){alert('DownloadBegin');}
WBobj.onDownloadBegin=function(){alert('onDownloadBegin');}
WBobj.NavigateComplete=function(){alert('NavigateComplete');}
WBobj.onNavigateComplete=function(){alert('onNavigateComplete');}
WBobj.NavigateComplete2=function(){alert('NavigateComplete2');}
WBobj.onNavigateComplete2=function(){alert('onNavigateComplete2');}
WBobj.RedirectXDomainBlocked=function(){alert('RedirectXDomainBlocked');}
WBobj.onRedirectXDomainBlocked=function(){alert('onRedirectXDomainBlocked');}
</script>
</html>Управление:
1 - навигировать к первому сайту
2 - -"- ко второму
F5 - обновить содержимое объекта
Esc - выход
Из всего этого работают только кнопки 1,2, и то один раз - сразу после загрузки сценария. В остальных случаях выскакивает ошибка "Разрешение отклонено" (Код 0). Я что-то делаю не так, или другого поведения объекта при использовании JScript и быть не должно?
P.S. Статью об объектах WebBrowser и InternetExplorer здесь читал - с неё-то всё и началось... Там тоже JScript не упоминается.

