2011-12-24 35 views
0

我試圖更改導航欄中元素的顏色,以便在文檔加載時給出所選頁面的效果。但是,我編寫的代碼(JS的新功能)不起作用;沒有顏色變化發生。請你能告訴我哪裏出錯了嗎?在文檔加載時更改標記的顏色

<script type="text/javascript"> 

     document.onLoad = (function() { 
      var nav = document.getElementById('textContainer'); 

      var navItems = nav.getElementsByTagName('a'); 

      var activeItem = navItems[0]; 

      activeItem.style.color = "#696969"; 
     }); 

</script> 

<div id="header"> 
    <a href="#"> 
    <div id="logo"></div> 
    </a> 
    <div id="navigation"> 
    <div id="textContainer"> 
     <h2><a href="#works">Works</a></h2> 
     <h2><a href="#blog">Blog</a></h2> 
     <h2><a href="#contact">Contact</a></h2> 
    </div> 
    </div> 
</div> 
+1

'的window.onload = ....'應工作。 – 2011-12-24 22:15:47

回答

2

document.onLoad替換爲window.onload。問題解決了。

JavaScript不是HTML。因此,它是區分大小寫的。在HTML中,全局事件處理程序附加到<body>。在JavaScript中,必須在window上定義全局方法。

方法來綁定一個事件偵聽器:

window.onload = function(){...};       // Works universally 
window.addEventListener("load", function(){...}, false); // @All decent browsers 
window.attachEvent("onload", function(){...});   // IE-only 
0

使用jQuery:

$("#textContainer h2 a").first().css("color","green"); 
+1

OP不使用jQuery。 – Blender 2011-12-24 22:19:40

0

這裏是全工作代碼

<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.1.min.js"></script> 
<script> 
$(document).ready(function() { 


     var nav = document.getElementById('textContainer'); 

     var navItems = nav.getElementsByTagName('a'); 

     var activeItem = navItems[0]; 

     activeItem.style.color = "#696969"; 
}); 
</script> 

<div id="header"> 
<a href="#"> 
<div id="logo"></div> 
</a> 
<div id="navigation"> 
<div id="textContainer"> 
    <h2><a href="#works">Works</a></h2> 
    <h2><a href="#blog">Blog</a></h2> 
    <h2><a href="#contact">Contact</a></h2> 
</div> 
</div> 
</div> 
+0

** Wat **?添加一個臃腫的庫,只是爲了一個簡單的加載事件?如果你真的想將代碼移植到jQuery,正確的方法是:'$(function(){$(「#textContainer a」)。eq(1).css(「color」,「#696969」)} );'。但是,正如別人在另一條評論中指出的那樣,這個問題對於jQuery而言並不是**。 – 2011-12-24 22:31:23

+0

謝謝,但現在沒有被取消選擇,你介意看一下嗎? http://jsfiddle.net/hJSrW/ – 2011-12-24 22:34:55

相關問題