2010-02-26 142 views
2

我有一個錨標記,我想禁用或啓用取決於某些條件。我可以這樣使用下面的函數才達到:禁用錨標記並刪除下劃線中的下劃線

function disableEnableAnchor(obj, disable) { 
    if(disable) { 
     var href = obj.getAttribute("href"); 
     if(href && href != "" && href != null) 
      obj.setAttribute('href_bak', href); 
     obj.removeAttribute('href');   
    } else { 
     var href_bak = obj.attributes['href_bak'].nodeValue;   
     obj.setAttribute('href', href_bak); 
    } 
} 

但是當錨處於禁用狀態,我無法刪除下劃線。我該如何在這個功能中實現這個功能?

+0

爲什麼作爲維基問? – spender 2010-02-26 11:06:14

回答

1

這聽起來像一個樣式表問題。有沒有像

a { 
    text-decoration: underline; 
} 

在應用於頁面的CSS文件?

使用以下CSS替換它應使<a>標記只有在具有href屬性時才加下劃線。

a:link, 
a:visited, 
a:hover, 
a:active { 
    text-decoration: underline; 
} 
3
obj.style.textDecoration = "none" 
+0

這不會起作用,因爲它會讓obj失去已設置的文本裝飾,如禁用和漸變。 – 2010-02-26 11:27:00

2

您可能需要考慮用跨度替換錨點。

+0

我想要的是一旦錨點被禁用,即它不包含'href'屬性並且屬性'disabled'爲真,下劃線不應該出現。我應該怎麼做呢? – 2010-02-26 11:36:06

0

使用該上HTML:

<a href="mylink" style="text-decoration