单击相对链接转到about:<relative link =“”>,它不显示想要的页面</relative>

时间:2009-06-24 12:38:17

标签: delphi

我在delphi 2007的一个项目中使用了TembeddedWB的14.67.9版本。我将TembeddedWB与loadfromstring结合使用。这一切都像我想要的那样,但是当点击页面中的链接时,它会转到我不期望的页面。例如,如果页面位于特定的IMDB结果站点上,并且单击该链接,则浏览器将转到:/ title / tt1041829 /。我想我忘了设置一些额外的财产,或者我做错了什么。如果有人能以正确的方式指出我,我会很感激。

2 个答案:

答案 0 :(得分:2)

看起来浏览器的当前URL未更新,并且使用默认的“about:blank”。我想如果您不通过NavigateNavigate2方法直接导航到网站,而是从本地文件或流加载HTML,则可能会发生这种情况。

编辑:我明白了,你正在使用LoadFromString确认这一点。

在这种情况下,应该可以使用OnBeforeNavigate2事件来修复网址。

答案 1 :(得分:1)

问题是您正在访问的网页使用相对链接,并且它相对的参考点也是您通过“about:blank”页面加载的loadfromstring。另一种解决方法是注入&lt; BASE href =“http://www.originaldomain.com/originalpath”&gt; HTML标题中的标记(在&lt; HEAD&gt;和&lt; / HEAD&gt;标记之间),指向访问该页面的位置。这将告诉浏览器相对标签的起始位置并将解决问题,而无需检查每个链接。