2012-06-27 219 views
0
window.addEventListener("load", run, false); 

function run() { 
    var links = content.document.getElementsByTagName("a"); 
    var x = ""; 
    for (var i = 0; i < links.length; i++) { 
     x = x + "<p>" + links[i] + "</p>"; 
    } 
    document.write(x); 
} 

我是JavaScript新手,我不能爲我的生活弄明白。這段JavaScript代碼有什麼問題?

+5

你會得到什麼錯誤?正在使用 – yoozer8

+2

document.write。除了內聯腳本(在DOM構建過程中運行,但仍然是icky)或者如果你真的想「重新打開」文檔,除此之外不要這樣做。 – 2012-06-27 18:27:48

+0

你的第一步是弄清楚你的Javascript代碼出了什麼問題應該是[your](http://msdn.microsoft.com/library/gg589507(VS.85).aspx)[browser's](https:// developers .google.com/chrome-developer-tools /)[developer](http://getfirebug.com/)[tools](http://www.opera.com/dragonfly/)。 (至少是錯誤控制檯和JS調試器) – millimoose

回答

3

刪除contents因爲它不是像window文檔父母和我懷疑有內置的JavaScript沒有content對象(雖然有jQuery中contents()功能):

var links = content.document.getElementsByTagName("a"); 
      ------^ 

或者你也可以得到所有鏈接與document.links像:

var links = document.links; 
+1

如果你解釋了爲什麼*內容應該被刪除,這將是有幫助的。 – josh3736