2012-01-10 102 views
0

這看起來很簡單,但是Im是JavaScript的新手。我在我的頁面上有一個鏈接。當你點擊這個鏈接時,會發生2件事。 1)使用html頁面跳轉到頁面上引用的錨標籤的位置。 2)保存鏈接的div改變其背景顏色。JavaScript改變div鏈接的顏色

HTML

<a href="#abcd" onclick="makeRed(this.href);">Link to div on page</a> 

<div id="abcd"> 
    <a name="abcd">Not a clickable link.</a> 
</div> 

JS

function makeRed(x) { 
var highlight=x.slice(-4); 
document.getElementsByName(highlight).parentNode.style.backgroundColor="red"; 
} 

螢火告訴我document.getElementsByName(亮點).parentNode是不確定的,這是我很困惑。

+1

也許嘗試document.getElementByID(「abcd」) – ToddBFisher 2012-01-10 15:04:50

+1

嘗試document.getElementsByName(highlight)[0] – 2012-01-10 15:06:50

回答

2

替換

document.getElementsByName(highlight).parentNode.style.backgroundColor="red"; 

document.getElementsByName(highlight)[0].parentNode.style.backgroundColor="red";

因爲getElementsByName返回一個數組

+1

這也適用。我給你正確的答案,因爲使用你的方法,我不必添加額外的ID給我的標籤。 – 2012-01-10 15:25:46