簡體   English   中英

在onclick事件中設置css屬性

[英]Set css attribute in onclick event

我有一個問題,在fontStyle中將fontStyle屬性設置為單個元素(通過id )。 我得到onClick事件,將樣式( bold字體樣式)放到所有類元素,然后嘗試將另一個樣式( normal )放到一個(單擊)元素。 我的代碼是:

$(document).on('click', '.listElement', function () {
    $('.listElement').css('font-weight', 'bold');
    alert(this.id);
    $(this).css('font-weight', 'normal');
});

有一個演示

為所有類元素設置bold樣式工作和對話框正確顯示id所以這是正確的元素(在this ),但.css()方法不起作用。 我嘗試使用id來設置樣式:

$('#A').css('font-weight', 'normal');

並且控制台中沒有錯誤但它也不起作用。 有沒有其他方法將fontStyle設置為單個唯一元素?

而不是刪除CSS樣式,為什么不直接將它添加到被點擊的對象?

獲取被點擊對象的ID並使用它...

$(document).on('click', '.listElement', function () {
var clickEl = this.id; //ID of clicked object
$('.listElement').not('#' + clickEl).css('font-weight', 'bold'); //bolds everything which is NOT the clicked item.
alert(this.id);
});

要么

$(document).on('click', '.listElement', function () {
$('.listElement').not('#' + this.id).css('font-weight', 'bold'); //bolds everything which is NOT the clicked item.
alert(this.id);
});

更新小提琴


如果有特定原因你需要刪除樣式而不是從不應用它...

$(document).on('click', '.listElement', function () {
$('.listElement').css('font-weight', 'bold');
alert(this.id);
$('.listElement#' + this.id).css('font-weight', 'normal');
});

小提琴

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM