VB程序员博客
我用webbrowser打开一个网页后,想修改他的一些script。
用了这样的语句
Private Sub WebBrowser1_NavigateComplete2(ByVal pDisp As Object, URL As Variant)
Set objScript = Me.WebBrowser1.Document.createElement("SCRIPT")
objScript.src = "c: emp.js"
If Not Me.WebBrowser1.Document Is Nothing Then
If Not Me.WebBrowser1.Document.body Is Nothing Then
WebBrowser1.Document.body.appendChild (objScript)
End Sub
结果在IE6.0的环境下可以运行。
在IE7.0的环境下提示:“脚本错误:无效字符”,
我把temp.js清空,里面没有一句话,还是提示“无效字符”
只有删了temp.js才能正常运行,当然网页中运行的js是原来网站的。
这是为什么?
http://support.microsoft.com/kb/934366/zh-cn
可以修改啊,需要在js中加上 <script language=javascript>你的代码 </script>。
另外,IE7安装后注册表中有错误,你要修改一下,不过从你的代码表现来看,你应该已经修改了,所以问题是出在这儿。在IE6中不需要加上 <script>标志就可以,但IE7不行。
为了让大家都明白IE7的错误,我把解决办法也贴出来:
IE7安装后,注册表中HKEY_CLASSES_ROOTTypeLib{EAB22AC0-30C1-11CF-A7EB-0000C05BAE0B}1.1 win32的值为C:WINDOWSsystem32ieframe.dll1,修改成C:WINDOWSsystem32ieframe.dll就可以在VB6中使用IE7的 WebBrowser了。
没有用,还是和以前一样。
Private Sub Form_Load()
WebBrowser1.Navigate "http://member1.taobao.com/member/login.jhtml?ssl=false&redirect_url=http%3A%2F%2Fmember1.taobao.com%2Faso%2Frtgs%3Fdomain%3Daliim%26target%3D687474703A2F2F776562777774622E696D2E616C69736F66742E636F6D2F77616E6777616E672F77656277772E68746D3F%26account_type%3Dnick"
End Sub
Private Sub WebBrowser1_NavigateComplete2(ByVal pDisp As Object, URL As Variant)
Set objScript = Me.WebBrowser1.Document.createElement("SCRIPT")
objScript.src = "c: emp.js"
If Not Me.WebBrowser1.Document Is Nothing Then
If Not Me.WebBrowser1.Document.body Is Nothing Then
WebBrowser1.Document.body.appendChild (objScript)
End If
End If
End Sub
temp.js如下
<script language=javascript>
var a='123';
alert(a);
</script>
我试过了,IE7也可以添加,只不过由于IE7默认不执行本地加载的JS,所以尽管成功了,但不显示对话框。
问一句,楼主是dycatv吗?
Mark!
关注。。。
学习ing
ddd
dddd
顶,学习
dddddd
see
IE7默认不执行本地加载的JS,只能加载网上的js
问题已解决。
mark 不错 调试程序又多了一个选择
帮顶!
studyed^
UP`
标签: , webbrowser, 修改, 网页