在Chtmlview中,瀏覽多frame的框架的網頁,有時點擊按鈕,這時只會觸發OnDownloadBegin,而不會觸發OnBeforeNavigate2,這時如何確定瀏覽


OnDownloadBegin()沒有傳進來的參數,這時我如何知道瀏覽器轉向的url?

7 个解决方案

#1


怎么會呢?每個frame的navigate動作都會觸發OnBeforeNavigate2;
實在不行實現這個接口IDocHostUIHandler,其中他的TranslateUrl在每次navigate之前都會被調用。

#2


比如我通過按鈕,調用javascritps,然后通過javascripts更新網頁數據就不會調用了!!

#3


通過Ajax得到的數據不會觸發。因為它沒有讓IE(mshtml.dll)來load數據,而是通過msxml.dll來得到數據的。這個是沒辦法的事兒。

#4


哦,那如何能檢測到是哪個frame數據更新了呢?至少在downloadcomplete中有響應,但是無法知道是那個frame呀

#5


downlaodcomplete函數會有一個參數,是具體frame的一個Dispatch接口指針,用這個指針能query到某個frame的IWebBrowser2接口,這就確定了是哪個frame

#6


DocumentComplete中會有Dispatch接口指針,但是downlaodcomplete是沒有的!所以不能確定啊

#7


嗯,抱歉疏忽了。
實在不行實現這個接口IDocHostUIHandler,其中他的TranslateUrl在每次navigate之前都會被調用。

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2020 ITdaan.com