2012-09-16 25 views
0

有沒有辦法到我的域之外保存一個彈出式窗口的來源作爲一個字符串,通過開:將彈出窗口的來源保存爲字符串?

window.open('html'); 

而且固定我的問題的另一種方法是引導彈出的輸出轉換成字符串。我可以使用Chrome的view-source:瀏覽器功能,使彈出:由於我只使用此爲個人使用,因此它只能使用Chrome兼容,如果這是這樣做的唯一途徑

window.open('view-source:html'); 

+0

你的意思是你要下載的源(可能部分或全部用它,圖片,樣式,腳本提供的內容,等)的一個彈出窗口?每個窗口,或只是你說「抓住彈出」的時間?另外,只是源代碼或DOM在你試圖抓住它的時候的狀態(現在它可能與你的瀏覽器最初收到的來源有很大的不同)? –

+0

只是簡單的來源。我不想下載它,而是稍後在我的代碼中將其解析爲變量。 –

回答

0

我會建議加載要在彈出的打開和提取它的innerHTML像這樣的文件:

var popup = window.open('http://url.com'); 
// documentElement is the <html> element so you would get everything inside 
var source = popup.document.documentElement.innerHTML; 

這適用於IE瀏覽器。我不確定Chrome對跨域彈出窗口的限制,因此您可能必須檢查您的本地設置。

0

如果你真的想建立一個小的應用程序來完成你所描述的東西,還記得你可以右鍵單擊並使用Chrome瀏覽幾乎所有的頁面的源代碼,包括標籤,主頁,和其他一些地方。諷刺的是與否,查看源代碼頁是唯一一個我發現,我似乎無法得到的來源,雖然我似乎發現了什麼它的URI是:

chrome-devtools://devtools/devtools.html 

但沒有出現,除非我是search for that URI。這裏有一些URI來打開並試圖Right-Click + View Source,看看你會得到什麼:

* Regular tab (new) 
* view-source:chrome://newtab/ 
* view-source:chrome://extensions-frame  // This has file handlers for extensions 
* view-source:chrome://settings-frame/settings // Go to lines `2907` 
* view-source:chrome://memory-redirect/ 
* view-source:chrome://downloads/ 
* view-source:chrome://settings-frame/options_bundle.js // This one has all kinds of good stuff 
* view-source:chrome://resources/js/util.js 
* view-source:chrome://chrome/uber.js 
* view-source:chrome://sync-internals/ 
* view-source:chrome://resources/js/cr/ui/array_data_model.js 
* view-source:chrome://resources/js/cr/ui/list_item.js 
* view-source:chrome://resources/js/cr/ui/tabs.js 

以下兩種做法的程序和更多,你可以找到:

http://developer.chrome.com/extensions/tabs.html#samples

Live HTTP Headersheaders.js - 什麼如下圖的是你如何能夠以一個監聽器附加到`window.onlaod``事件並在接收到響應時,被通知,所以你可以抓住的來源(而不是瀏覽器的解析和計算的源)。

window.addEventListener("load", function() { 
    chrome.debugger.sendCommand({tabId:tabId}, "Network.enable"); 
    chrome.debugger.onEvent.addListener(onEvent); 
}); 

} else if (message == "Network.responseReceived") { 
    appendResponse(params.requestId, params.response); 
} 

Download Selected Links - 從一個文件中的第二名爲popup.js

// Send back to the popup a sorted deduped list of valid link URLs on this page. 
// The popup injects this script into all frames in the active tab. 
chrome.extension.sendRequest(links); 

// Download all visible checked links. 
chrome.experimental.downloads.download({ 
    url: visibleLinks[i]}, 
    function(id) { 
}); 

,當然,這裏有一個叫做SingleFile程序,該程序作爲一個擴展。這似乎做的只是你以後在做什麼(或者你可以下載只是parts它的separatelycomprised):

SingleFile(C)2011吉爾達斯Lormeau

SingleFile是一款Chrome擴展這有助於完整 頁面歸檔到一個單一的HTML文件。

壞消息恐怕很多東西都是有用的,因爲現在我已經看了很多它和其他資源,我覺得相當多的這個或多或少是內部瀏覽器只要。請注意示例應用程序,並記住有不同用途和訪問級別的several different kinds of apps。不用說,我發現了很多東西,我不知道你想要多少,需要什麼或關心。但是我想,既然你讓我重新思考,我會繼續和你分享我發現的東西。有幾個示例應用程序,我認爲您可以重新配置或與之合作爲您工作。祝你好運。


其他一些亮點:

相關問題