<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; HTA JS: объект WebBrowser]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=7465&amp;type=atom" />
	<updated>2012-08-16T05:48:32Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=7465</id>
		<entry>
			<title type="html"><![CDATA[Re: HTA JS: объект WebBrowser]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=62830#p62830" />
			<content type="html"><![CDATA[<p>Чтение MSDN было первым, что я сделал после прочтения статьи на этом сайте... Про ограничения там ничего не было, но там не было и про JScript.</p>]]></content>
			<author>
				<name><![CDATA[Serge Yolkin]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27503</uri>
			</author>
			<updated>2012-08-16T05:48:32Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=62830#p62830</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA JS: объект WebBrowser]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=62829#p62829" />
			<content type="html"><![CDATA[<p>Не знаю, какие то ограничения в безопасности, нужно почитать мсдн</p>]]></content>
			<author>
				<name><![CDATA[smaharbA]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=2911</uri>
			</author>
			<updated>2012-08-16T05:38:16Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=62829#p62829</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA JS: объект WebBrowser]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=62828#p62828" />
			<content type="html"><![CDATA[<p><strong>smaharbA</strong>, я, наверное, невнятно формулирую свою проблему. Можно ли ПОСЛЕ того, как Ваш скрипт отработал и страница загрузилась в объект, изменить содержимое объекта из скрипта. Т.е. ПОВТОРНО вызвать метод x.navigate(), или другие методы (x.refresh(), x.stop(), x.quit())? У меня такие попытки приводят к ошибке. Вот я и хочу понять: это нормально, или я что-то делаю не так?</p><p>Добавьте в конец скрипта из Вашего примера</p><div class="codebox"><pre><code>document.onkeydown=function(){
    if(event.keyCode==49){x.refresh();} // 1
    if(event.keyCode==50){x.navigate(&#039;http://www.ixbt.com&#039;);} // 2
    if(event.keyCode==51){x.navigate(&#039;about:blank&#039;);} // 3
}</code></pre></div><p>Я рассчитывал на то, что нажатия кнопок 1, 2, 3 на клавиатуре будут вызывать соответствующие методы, изменяющие/обновляющие содержимое объекта, но этого не происходит.</p>]]></content>
			<author>
				<name><![CDATA[Serge Yolkin]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27503</uri>
			</author>
			<updated>2012-08-16T05:25:43Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=62828#p62828</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA JS: объект WebBrowser]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=62827#p62827" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>&lt;hta:application scroll=no&gt;
&lt;html&gt;
&lt;body&gt;
  &lt;object id=&quot;WBobj&quot;
   classid=&quot;clsid:8856F961-340A-11D0-A96B-00C04FD705A2&quot; style=&quot;{width: 100%; height:100%}&quot;
   &gt;&lt;/object&gt;
&lt;/body&gt;
&lt;script type=&quot;text/jscript&quot; language=&quot;JScript&quot;&gt;
    var x=document.getElementById(&quot;WBobj&quot;).object;
    x.RegisterAsBrowser=true;
    window.onload=function()
    {
        x.navigate(&#039;http://script-coding.com&#039;);
        function x::NavigateComplete2(a,b)
        {
            alert(b);
        }
    }
&lt;/script&gt;
&lt;/html&gt;</code></pre></div>]]></content>
			<author>
				<name><![CDATA[smaharbA]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=2911</uri>
			</author>
			<updated>2012-08-16T04:40:54Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=62827#p62827</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA JS: объект WebBrowser]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=62805#p62805" />
			<content type="html"><![CDATA[<p><strong>smaharbA</strong>, спасибо за события, не сталкивался ещё с таким синтаксисом. Код из поста #3 заработал, из #2 - нет, или в моём примере DocumentComplete не происходит... Но главный вопрос в другом: почему не работает навигация? при нажати на ссылку на открытой странице переход происходит нормально, как в браузере, а вот из скрипта (navigate, navigate2) страница грузится только однажды - сразу после запуска сценария, последующие нажатия клавишей 1, 2, F5 (refresh) вызывают ошибку &quot;Разрешение отклонено&quot;. Причём, даже если была загружена about:blank. Методы stop() и quit() - тоже самое.</p><p>P.S. Win7x32, если это важно</p>]]></content>
			<author>
				<name><![CDATA[Serge Yolkin]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27503</uri>
			</author>
			<updated>2012-08-15T18:04:19Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=62805#p62805</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA JS: объект WebBrowser]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=62801#p62801" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>    var x=document.getElementById(&quot;WBobj&quot;);
    window.onload=function()
    {
        x.navigate(&#039;about:blank&#039;);
        function x::NavigateComplete2(a,b)
        {
            alert(b);
        }
    }</code></pre></div>]]></content>
			<author>
				<name><![CDATA[smaharbA]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=2911</uri>
			</author>
			<updated>2012-08-15T12:39:45Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=62801#p62801</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA JS: объект WebBrowser]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=62800#p62800" />
			<content type="html"><![CDATA[<p>function WBobj:DocumentComplete()<br />{<br />alert (123);<br />}</p>]]></content>
			<author>
				<name><![CDATA[smaharbA]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=2911</uri>
			</author>
			<updated>2012-08-15T12:17:31Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=62800#p62800</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[HTA JS: объект WebBrowser]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=62798#p62798" />
			<content type="html"><![CDATA[<p>Без определённой конечной цели, для общего развития и расширения кругозора, попробовал поиграться с объектом WebBrowser (clsid:8856F961-340A-11D0-A96B-00C04FD705A2). Но он не хочет со мной играть!<br />В MSDN описания и примеры - только для C/C#/C++ и VB, поиск в интернете выдал только использование этого объекта для печати (по крайней мере, первые 5 страниц). Сделал тестовый хэтэашник test.hta:</p><div class="codebox"><pre><code>&lt;html&gt;
&lt;body&gt;
  &lt;object id=&quot;WBobj&quot;
   classid=&quot;clsid:8856F961-340A-11D0-A96B-00C04FD705A2&quot;
   &gt;&lt;/object&gt;
&lt;/body&gt;
&lt;script type=&quot;text/jscript&quot; language=&quot;JScript&quot;&gt;
  document.onkeydown=function(){
    if(event.keyCode==49){WBobj.navigate(&#039;http://www.nix.ru&#039;);} // 1
    if(event.keyCode==50){WBobj.navigate(&#039;http://www.ixbt.com&#039;);} // 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(&#039;DocumentComplete&#039;);}
  WBobj.onDocumentComplete=function(){alert(&#039;onDocumentComplete&#039;);}
  WBobj.DownloadComplete=function(){alert(&#039;DownloadComplete&#039;);}
  WBobj.onDownloadComplete=function(){alert(&#039;onDownloadComplete&#039;);}
  WBobj.BeforeNavigate=function(){alert(&#039;BeforeNavigate&#039;);}
  WBobj.onBeforeNavigate=function(){alert(&#039;onBeforeNavigate&#039;);}
  WBobj.BeforeNavigate2=function(){alert(&#039;BeforeNavigate2&#039;);}
  WBobj.onBeforeNavigate2=function(){alert(&#039;onBeforeNavigate2&#039;);}
  WBobj.DownloadBegin=function(){alert(&#039;DownloadBegin&#039;);}
  WBobj.onDownloadBegin=function(){alert(&#039;onDownloadBegin&#039;);}
  WBobj.NavigateComplete=function(){alert(&#039;NavigateComplete&#039;);}
  WBobj.onNavigateComplete=function(){alert(&#039;onNavigateComplete&#039;);}
  WBobj.NavigateComplete2=function(){alert(&#039;NavigateComplete2&#039;);}
  WBobj.onNavigateComplete2=function(){alert(&#039;onNavigateComplete2&#039;);}
  WBobj.RedirectXDomainBlocked=function(){alert(&#039;RedirectXDomainBlocked&#039;);}
  WBobj.onRedirectXDomainBlocked=function(){alert(&#039;onRedirectXDomainBlocked&#039;);}
&lt;/script&gt;
&lt;/html&gt;</code></pre></div><p>Управление:<br /> 1 - навигировать к первому сайту<br /> 2 - -&quot;- ко второму<br /> F5 - обновить содержимое объекта<br /> Esc - выход<br />Из всего этого работают только кнопки 1,2, и то один раз - сразу после загрузки сценария. В остальных случаях выскакивает ошибка &quot;Разрешение отклонено&quot; (Код 0). Я что-то делаю не так, или другого поведения объекта при использовании JScript и быть не должно?</p><p>P.S. Статью об объектах WebBrowser и InternetExplorer здесь читал - с неё-то всё и началось... Там тоже JScript не упоминается.</p>]]></content>
			<author>
				<name><![CDATA[Serge Yolkin]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27503</uri>
			</author>
			<updated>2012-08-15T11:48:26Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=62798#p62798</id>
		</entry>
</feed>
