簡體   English   中英

使用javascript將CSS類添加到td標簽

[英]Add css class to a td tag using javascript

我正在嘗試以Greasemonkey腳本的形式制作Moodle的時間表。

這個想法是突出當前小時的主題,但我找不到做到這一點的可行方法。

我將css注入頁面,並使用jQuery將注入的css類添加到目標td。

這是注入頁面標題的css代碼:

.current_class {background-color:green};

這是用於將類添加到td的javascript代碼:

var cell = $("#timetable_table").find("tr").eq(current+1).find("td").eq(date.getDay());

我知道cell是正確的td,因為我可以cell.text(“ foo”)並修改正確的cell,但是當我這樣做時:

cell.addClass("current_class");

桌子保持不變。

我不必那樣做,我只想動態更改td標簽上的背景,所以我不介意使用其他方法。

謝謝。

首先,我建議您更改為:

var cell = document.getElementById('timetable_table').rows(current+1).cells(date.getDay());

和:

cell.className += (cell.className ? " " : "")+"current_class";

但這僅僅是出於性能原因

造成此問題的可能原因是,您在其他地方定義的background-color具有更高的特異性。 嘗試使用此CSS選擇器:

#timetable_table tr>td.current_class{background-color:green};

那應該足夠具體才能獲勝。

使用className屬性進行更改或添加類,例如:

tbody.firstChild.lastChild.className='tr-parent1';

暫無
暫無

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

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