C# 浏览器 有关打开部分网页错误问题

来源:百度知道 编辑:UC知道 时间:2024/06/21 09:56:39
我自己做了一个浏览器,用了WebBrowser!基本网页都能打开啦,没问题,可是后来我发觉打开我们学校网站的新闻列表的时候,一点击就无法显示页面了,地址栏显示的 网址也变成这个javascript:opennew('http://news.sise.com.cn/show.php?id-535.html')。 然后我去掉前面的javascript:opennew 和括号,手动回车就能打开该页面了,不知道大家有没有遇到这个问题,怎样解决,为什么会有javascript:opennew这个。 我给你们看一下我弹出新窗口事件的 部分代码:
WebBrowser srcBrowser = (WebBrowser)sender;
string newUrl = srcBrowser.StatusText;
this.comboBox1.Text = newUrl;
webNew[tabControl1.SelectedIndex].Navigate(newUrl);
不知道是代码问题还是~~~~ 请各位大侠多多指教啦! 分数不多,555,因为是我所有分数了!谢谢啦!
问题是为什么会有就是有这个改了我的新窗口弹出来的网址,才无法打开新的页面,这个页面好像是.php的就不行了,去掉javascript:opennew(''); 取中间的网址按回车就可以在我的浏览器打开了、、!!

具体代码未做过测试,但主要原因是页面的链接使用Javascript,以window.open()函数打开。(opennew()这个函数是该网站开发者定义的函数)。
解决思路主是允许WebBrowser控件使用JavaScript,或者通过WebBrowser控件监听页面中的脚本,将<a href="">标签中的脚本,执行,而不是简单以默认方式处理(即打开窗口,或跳转到href中指定的地址。

浏览器的编写 是一个比较复杂的问题
需要编写很多控制JavaScript CSS 等页面布局的代码
你所写的代码 没什么问题 主要是一些细节知识问题

请在你的地址前加上"http://"就可以了,每次输入的时候判断有没有输入"http://",没有就补上,有就直接进入就行了

你要在webbrowser的newwindow事件中处理打开新窗口的链接