2011-07-19 77 views
2

我用JavaScript和jQuery都沒有使用骰子,這是直觀的方式。返回所有頁面沒有id元素的iframe

document.GetElementsByTagName('iframe'); 

了我:

Uncaught TypeError: Object # has no method 'GetElementsByTagName'

$('iframe') 讓我undefined

iframe是一個元素嗎?有沒有辦法做到這一點?

我試圖返回所有的頁面iframes。

謝謝。

+0

你需要包括jQuery的使用'$( 'IFRAME')'。 – zzzzBov

+1

'window.frames'是一個選項。它收集'iframe'和'frame'元素。然而,這可以通過一個簡單的'window.frames [iterator] .tagName ===「IFRAME」檢查來抵制。 – 2011-07-19 02:55:35

回答

5

該功能需要像小寫字母g這樣的document.getElementsByTagName('iframe')。是的,iframe是一個標籤。 https://developer.mozilla.org/en-US/docs/Web/API/Document/getElementsByTagName

+0

謝謝:)這是偉大的,它是返回所有文檔iframes,但不是內部框架是兒童。我應該能夠做同樣的事情來找到孩子嗎? –

+1

我有點困惑iFrame孩子的意思。你能詳細說明一下嗎? – Joe

+0

我正在尋找特定iframe中的iframe。 –

2

iframe只是一個正常的因素。

您需要注意getElementsByTagName()(小寫字母g,DOM API使用camelCase,而不是PascalCase)的正確大小寫。

此外,對於jQuery,$('iframe')應該工作。

0

試試這個:

function getFramesWithNoId() { 
    var result = []; 
    var frames = document.getElementsByTagName('iframe'); 
    for (var i = 0; i < frames.length; i++) { 
     if (!frames[i].id) { 
      result.push(frames[i]); 
     } 
    } 
    return(result); 
} 

您可以在行動在這裏看到:http://jsfiddle.net/jfriend00/Uxsyg/

+0

我不認爲OP的意思是從字面上得到沒有'id'屬性的'iframe's。 – alex

+0

我把OP的帖子的標題看成是它所說的,但也許它們意味着不同的東西。誰知道? – jfriend00