2014-12-08 33 views
0

我想從網站採取2截圖 - 一個之前,一個注入到網站,和一個後。PhantomJS截圖和比較(Resemble.js?)

問題是 - 當我嘗試在所有資源加載完畢後(並在注入腳本之前)執行第一個屏幕截圖 - 它不會從onInitialized函數內部創建屏幕截圖..任何線索爲什麼?

page.onInitialized = function() { 
    page.render('e1.png'); 
    page.evaluate(function() { 
     <here i'm injectingo the page> 
    }); 
}; 

另外 - 我怎麼能比較兩個截圖類似js?我使用npm安裝了軟件包,並且我正在使用phantomjs運行測試,那麼將通過phantomjs創建的屏幕截圖保存到變量中然後使用resemble.js進行編譯的方法是什麼? 我很高興看到一個代碼正在滿足我的需求。 非常感謝!

回答

0

page.onInitialized事件是

網頁被創建,但在加載URL前後調用

您需要使用page.onLoadFinishedpage.open回調等到其所有的資源頁面加載。請注意,如果頁面是通過JavaScript動態生成的,則需要等待setTimeout

+0

我還沒有使用過resemble.js,所以我現在無法回答它。 – 2014-12-08 10:28:26