2014-09-02 61 views
1

請參見下面的代碼。點擊後,文本變粗。我希望能夠通過點擊相同的按鈕在「正常」和「粗體」文本之間切換。我怎麼能做到這一點?如何切換一個。對(「點擊」)功能

$("#InputsWrapper").on("click", ".boldText", function (e) { 
    e.preventDefault(); 
    $(this).parent().find(".fTypex").css({"font-weight":"bold"}); 
}); 

回答

2

的更好的方法是用toggleClass切換類:

CSS:

.bold { font-weight: bold; } 

的JavaScript:

$('#InputsWrapper').on('click', '.boldText', function(e) { 
    $(this).parent().find('.fTypex').toggleClass('bold'); 
    e.preventDefault(); 
}); 

DEMO:http://jsfiddle.net/bz9wnh6m/

+0

漂亮的一個例子!謝謝。 – Nelie 2014-09-02 16:04:37

0

EDITED:

HTML:

<a href="#" class="boldtrigger">Bold</a> 
<div class="text"> Here is the text </div> 

JS:

$(".boldtrigger").click(function() { 
    $(".text").toggleClass("bold"); 
}); 

下面是JQUERY工作示例2.0+使用toggleClass()方法:http://jsfiddle.net/S9qDD/

乾杯!

+0

'toggle'事件已被棄用,並從jQuery的最新版本中徹底刪除。 – VisioN 2014-09-02 16:02:47

+0

是的,我剛剛發現。這是一個更新的。 – Andrew 2014-09-02 16:10:01

+0

FWIW,您的解決方案將從1.0版開始工作... – VisioN 2014-09-02 16:11:33

0

你想要什麼.toggleClass()方法。 這裏是一個link

<script> 
$("#InputsWrapper").on("click", ".boldText", function (e) { 
e.preventDefault(); 
    $(this).parent().find(".fTypex").toggleClass("bold-text"); 
}); 
</script> 
<style> 
.bold-text{ 
    font-weight":"bold; 
} 
</style>