2011-10-30 31 views
3

我有這個<iFrame> [name =「data」],頁面顯示<span>,id =「weergave_percentage」。 我想從該跨度中的數字轉換爲javascript函數。 我目前做這一點,但它返回:空javascript - 從iframe中的元素獲取數據

var percentage = window.frames['data'].document.getElementById('weergave_percentage'); 
alert(percentage); 

什麼我做錯了,我該怎麼做我想要什麼?

注意:包含數據的範圍只包含數字(浮點數),並且不包含任何其他HTML格式。 另外,我已經把iFrame的代碼放在了一段JavaScript之後,以確保在我嘗試從iFrame獲取數據時加載了iFrame。 此外,iFrame的src與主頁面位於同一個域中。

回答

8

如果iframe src鏈接到其他域而不是您的頁面顯示的域 - 那麼您無法獲取該數據(瀏覽器預先跨站點腳本)。

除此之外 - 這可能應該工作:

$('iframe').contents().find('#weergave_percentage').html(); 
+0

這是要知道一件好事,雖然iframe是在同一個域中的主頁。 – laarsk

+0

哦,我看到你編輯了你的信息:完美的作品!我注意到我不得不使用setTimeout來延遲javascript函數,所以它可以讀取iFrame數據,但這完全沒有問題。謝謝! – laarsk