<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; VBS: setInterval не работает]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=11097&amp;type=atom" />
	<updated>2015-11-23T22:01:44Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=11097</id>
		<entry>
			<title type="html"><![CDATA[Re: VBS: setInterval не работает]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=99253#p99253" />
			<content type="html"><![CDATA[<p><em>window.setInterval</em> принимает в качестве первого аргумента либо строку кода, либо ссылку на функцию (во втором случае, кстати, указывать язык не нужно и бесполезно).<br />Такая запись<br /></p><div class="codebox"><pre><code>setInterval f(), 1000, &quot;VBScript&quot;</code></pre></div><p>как раз соответствует первому случаю:<br />вызвать функцию <em>f</em>, в предположении что она возвратит строку кода на VBScript, и затем уже запускать через 1000 мс порождённый функцией код.</p><p>А вот так будет запускаться через 1000 мс сама фунция <em>f</em> (первым аргументом — ссылка на неё):<br /></p><div class="codebox"><pre><code>setInterval GetRef(&quot;f&quot;), 1000</code></pre></div><div class="quotebox"><cite>no-coder пишет:</cite><blockquote><p>выскакивает ошибка Internet Explorer &quot;Несоответствие типа: &#039;f&#039;&quot;</p><p>в чём моя ошибка?</p></blockquote></div><p>А откуда IE знать о функции в вызвавшем его скрипте? При этом, возможно, что в загруженном в него (IE) документе уже есть функция или переменная с таким именем.</p>]]></content>
			<author>
				<name><![CDATA[wisgest]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=3850</uri>
			</author>
			<updated>2015-11-23T22:01:44Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=99253#p99253</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[VBS: setInterval не работает]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=99214#p99214" />
			<content type="html"><![CDATA[<div class="codebox"><pre><code>dim p
Set p=New pClass
p.Application.visible=true
p.Application.Navigate &quot;http://site.com&quot;

SUB p_DocumentComplete(pDisp,URL)
	if p.Application.LocationURL &lt;&gt; URL Then 
		p.Application.StatusText=&quot;not loaded...&quot;
		Exit Sub
	end if
END SUB

do while p.application.busy
loop

p.application.document.parentWindow.setInterval f(),1000,&quot;vbscript&quot;

function f()
	p.application.document.title=time
end function

Sub p_OnQuit()
	Wscript.Quit
End Sub
Class pClass
	Public Application
	Private Sub Class_Initialize
		Set Application = WScript.CreateObject(&quot;InternetExplorer.Application&quot;,&quot;p_&quot;)
	End Sub
	Sub Class_Terminate
		Do
			WScript.Sleep 10
		Loop Until Application = &quot;&quot;
	End Sub
End Class</code></pre></div><p>Функция f() срабатывает один раз и выскакивает ошибка Windows Script Host &quot;Недопустимый аргумент&quot;.<br />Пробовал следующее...<br /></p><div class="codebox"><pre><code>p.application.document.parentWindow.setInterval &quot;f()&quot;,1000,&quot;vbscript&quot;</code></pre></div><p>выскакивает ошибка Internet Explorer &quot;Несоответствие типа: &#039;f&#039;&quot;</p><p>в чём моя ошибка?</p>]]></content>
			<author>
				<name><![CDATA[no-coder]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27361</uri>
			</author>
			<updated>2015-11-22T03:51:29Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=99214#p99214</id>
		</entry>
</feed>
