2
我正在爲我的客戶端面板製作導航欄。它有很多鏈接。點擊鏈接時,它會改變屏幕主要部分顯示的內容。我需要能夠更改ul
(導航欄)中每個li
條目的類別。jquery - 更改類功能
這是我的代碼,它的工作原理:
$(document).ready(function() {
function changeActive() {
$('#elem1, #elem2').removeClass("active");
}
$('#main-section').load('src-pages/elem1.html');
$('#elem1').addClass("active");
$('li#elem1').click(function() {
//load file now
$('#main-section').load('src-pages/elem1.html');
changeActive();
$(this).addClass("active");
});
$('li#elem2').click(function() {
//load file now
$('#main-section').load('src-pages/elem2.html');
changeActive();
$(this).addClass("active");
});
});
我試圖使文件大小盡可能小和想補充的$(this).addClass("active");
線,進到changeActive
功能。當我將該行添加到該函數中時,它無法正常工作,並且僅將:hover
和:focus
樣式應用於li
或a
元素。
有人能解釋一下:
- 爲什麼這條線(
$(this).addClass("active");
)在功能不起作用 - 我怎麼能修復線,以把它裏面的函數
先謝謝你。
奇妙 - 它的工作原理!非常感謝。 –
@JoshMurray肯定了解'this'是如何在Javascript中工作的。它與大多數其他語言不一樣,並且不止一次地咬過我。一個很好的理解能夠幫助你免於痛苦 – Carcigenicate
@Carcigenicate:會的,謝謝。 –