2010-11-22 43 views
6

jsFiddle爲什麼jQuery代碼不能從div工作中刪除邊框?

我想使用jQuery刪除div的邊框,但它不工作。我究竟做錯了什麼?

HTML:

<!DOCTYPE html> 
<html> 
<head> 
    <style> 
    div { width: 200px; height: 150px; background-color: #f33; border: 10px solid silver;} 
    </style> 
</head> 
<body> 
    <div id="a1"></div> 
    <br> 
    <br> 
    <div id="a3">click</div> 
</body> 
</html> 

的Javascript:

$("#a3").click(function() { 
    $('#a1').css("border", ""); 
}): 

回答

16
  • 元素ID不能以數字開頭
  • 腳本與:結束,不;
  • 設置bordernone,不一個空字符串
+0

非常感謝您的支持,我已經更新了這個問題。儘管如此,仍然無法運作。 – ben 2010-11-22 00:15:35

+0

@ben:看我的更新。 – SLaks 2010-11-22 00:15:59

+0

+1:http://jsfiddle.net/SebastianPataneMasuelli/XWt53/5/ – 2010-11-22 00:28:25

6

即使你得到了id的權利,我想你想要的。

$("#three").click(function() { 
    $('#one').css("border", "none"); 
}); 

如果將邊框樣式設置爲空字符串,則不會覆蓋CSS給出的邊框樣式。你需要給它一個將被應用的值。使用空字符串將刪除元素上的樣式屬性,並將內聯樣式標記的級聯樣式應用。

0

好吧,你有三個問題:

  1. 元素ID不能以數字開頭。您的JS代碼以:(冒號)結尾;您的JS代碼以:(冒號)結尾;您的代碼以:(冒號)結尾;那應該是;(分號),或者它是一個語法錯誤。
  2. 將邊框設置爲空字符串不會刪除邊框。嘗試$('#1').css('border', 'none');
0

代替css("border", "");使用css("border", "none");

但同樣重要的是,因爲它是導致其完全無法改變:;在腳本的結尾。在http://jsfiddle.net/XWt53/4/

0

例如是否您點擊DIV綁定了一個click事件?

$("#a3").bind('click', function() { 
    $("#a1").css('border', 'none'); 
}); 
相關問題