我試圖使用純Javascript(無jQuery)循環瀏覽頁面上的每個iframe,然後檢查是否有任何iframe包含高亮(選定)文本。然後顯示一個顯示突出顯示文本的警報。踢球者是...內部框架的ID將不會提前知道。因此需要遍歷每個iframe。僅供參考 - 內聯框架全部位於同一個域中,因此不存在跨域問題。獲取任何iframe中的選定文本
我認爲我的代碼非常接近我所需要的,但沒有雪茄到目前爲止。
在頁面加載,我這樣做...
var iframes = document.getElementsByTagName('iframe');
for (var i = 0; i < iframes.length; i++) {
iframes[i].contentWindow.document.onmouseup = function() {
var iframeSelection = iframes[i].contentWindow.document.getSelection();
if (iframeSelection.toString().length > 0) { alert(iframeSelection); }
}
}
而且......對於這個特定的項目,只需要在Chrome工作。
謝謝!
嘗試沒有 「contentWindow」:EX 變種iframeSelection = iFrame的[I] .document.getSelection(); 另外,我相信你需要在「窗口」而不是文檔上運行getSelection。 – Bioto
謝謝,但這不是問題,因爲我已經(成功)通過使用getElementById(使用contentWindow,document等)獲取所選文本在* single * iframe中。當頁面上有_multiple_ iframe時,無法知道如何做到這一點。 – JustAnotherCoder