我在delphi 2007的一个项目中使用了TembeddedWB的14.67.9版本。我将TembeddedWB与loadfromstring结合使用。这一切都像我想要的那样,但是当点击页面中的链接时,它会转到我不期望的页面。例如,如果页面位于特定的IMDB结果站点上,并且单击该链接,则浏览器将转到:/ title / tt1041829 /。我想我忘了设置一些额外的财产,或者我做错了什么。如果有人能以正确的方式指出我,我会很感激。
答案 0 :(得分:2)
看起来浏览器的当前URL未更新,并且使用默认的“about:blank”。我想如果您不通过Navigate
或Navigate2
方法直接导航到网站,而是从本地文件或流加载HTML,则可能会发生这种情况。
编辑:我明白了,你正在使用LoadFromString确认这一点。
在这种情况下,应该可以使用OnBeforeNavigate2
事件来修复网址。
答案 1 :(得分:1)
问题是您正在访问的网页使用相对链接,并且它相对的参考点也是您通过“about:blank”页面加载的loadfromstring。另一种解决方法是注入< BASE href =“http://www.originaldomain.com/originalpath”> HTML标题中的标记(在< HEAD>和< / HEAD>标记之间),指向访问该页面的位置。这将告诉浏览器相对标签的起始位置并将解决问题,而无需检查每个链接。