<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://www.jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://www.jackxiang.com/post//</link>
<title><![CDATA[webbrowser里的js与程序交互]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[WEB2.0]]></category>
<pubDate>Thu, 25 Oct 2012 05:04:24 +0000</pubDate> 
<guid>http://www.jackxiang.com/post//</guid> 
<description>
<![CDATA[ 
	比如在vb中有如下代码：<br/>Private Function Test(S1,S2,S3)<br/>Msgbox S1 &amp; S2 &amp; S3<br/>End Function<br/>现在在程序中嵌入webbrowser，要求在webbrowser网页js的onclick事件能够触发上面的函数。比如：<br/>&lt;a onclick=&quot;test(&#039;X&#039;,&#039;Y&#039;,&#039;Z&#039;)&quot;&gt;文字&lt;/a&gt;<br/>我要详细代码，能够直接运行的那种，请高手赐教，谢谢！<br/><br/>------------------------------------------------------------------------------------------------------------------------------------------------<br/>VBA的代码和vbs、js的代码虽然在语法有相似之处，但是结构完全不一样，VBA为编译代码，脚本为解释代码，两者不能实现直接交互，只能通过间接交互实现<br/>这里通过VBScript修改浏览器标题，触发VB内部的TitleChange而实现交互<br/><br/><br/>网页代码：<br/>&lt;a onclick=VBScript:document.title=&quot;VB:test(&#039;X&#039;,&#039;Y&#039;,&#039;Z&#039;)&quot;&gt;文字&lt;/a&gt;<br/><br/>窗体代码：<br/>Option Compare Text<br/><br/>Private Function Test(S1, S2, S3)<br/>MsgBox S1 &amp; S2 &amp; S3<br/>End Function<br/><br/>Private Sub Form_Load()<br/>WebBrowser1.Navigate &quot;e:&#92;1.htm&quot;<br/>End Sub<br/><br/>Private Sub WebBrowser1_TitleChange(ByVal Text As String)<br/>If Left(Text, 3) = &quot;VB:&quot; Then<br/> Dim s As String, fncName As String, l As Long, args<br/> s = Mid(Text, 4)<br/> s = Replace(s, &quot;(&quot;, &quot; &quot;)<br/> s = Replace(s, &quot;)&quot;, &quot; &quot;)<br/> l = InStr(s, &quot; &quot;)<br/> <br/> fncName = Trim(Left(s, l - 1))<br/> args = Split(Mid(s, l), &quot;,&quot;)<br/> For i = 0 To UBound(args)<br/>&nbsp;&nbsp;args(i) = Trim(args(i))<br/> Next<br/> <br/> Select Case fncName<br/>&nbsp;&nbsp;Case &quot;test&quot;<br/>&nbsp;&nbsp; Test args(0), args(1), args(2)<br/> End Select<br/>Else<br/> Caption = Text<br/>End If<br/>End Sub<br/><br/>来源：http://zhidao.baidu.com/question/98643392.html&amp;__bd_tkn__=2ebb4a25322b83604757a633bbba2fbec00bd2d08078338d51fed8133ea5c69d362ad36bb4bcda3b39bb3949f6bbe47087ac3af56e60b1f4e7eb60157154fb369e64a0fa40491fc7006f357ca033ca0e3f04937e782ac28ea13d310e772d335fce130a3b4fb0ddd99e08eabbc9da880acf3422f549
]]>
</description>
</item><item>
<link>http://www.jackxiang.com/post//#blogcomment</link>
<title><![CDATA[[评论] webbrowser里的js与程序交互]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://www.jackxiang.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>