我試圖使用嵌入標籤顯示PDF。 PDF是從.NET中的HTTPHandler加載的。如何找出何時通過嵌入標籤加載PDF
PDF的顯示工作正常,但我想知道文件何時完成加載和顯示,以便我可以運行JavaScript函數。
我已經嘗試綁定onloadeddata,onload,onloadstart,onended和onplay的事件處理程序,但他們都沒有受到打擊。
是我想做的可能嗎?如果是這樣,我可以捕捉到什麼事件?
<embed [email protected] id="pdfiFrame" type="application/pdf" alt="pdf" style="width: 100%; height: 99.4%;" frameborder="0" pluginspage="http://www.adobe.com/products/acrobat/readstep2.html" onloadeddata='tryThis;' onload="tryThis;" onloadstart="tryThis;", onended="tryThis;" onplay="tryThis;"/>
function tryThis(arg) {
alert("here = " + arg);
}
路徑在MVC Razor視圖中的變量中定義。
從處理程序本身執行任何操作都不是一個選項,因爲我也在緩存結果,所以處理程序不會再次被打到同一個文件。
您提出了一個有趣的觀點,即不一定加載整個事物。我真正想要做的是在頁面上放置一個模態進度指示器,直到文檔準備好查看。這並不意味着整個事情就在那裏,只是第一頁是可見的。有關如何做這部分的任何想法? – ChrisC
Adobe Reader會這樣做,但它幾乎是猜測,除非它是網絡優化的,並且這些天成爲默認PDF查看器的可能性相當低。您將遇到的問題是,典型的PDF查看器不知道文件中的哪些字節是任何給定頁面所需的。這些對象是隨機訪問的,一個頁面對象可能涉及任何數量的其他對象,這些對象可能是共享的或對該頁面是唯一的。查看器只發現一個對象在讀取它時引用了另一組對象。 – joelgeraci