我試圖在點擊父節點標記時切換節點的文本。下面是HTML:jQuery文本無法在第一次點擊時切換
<h2 class="panel-title">
<a href="#collapse1">
<span class="ui-hidden-accessible">expand</span>
</a>
</h2>
,而這是被稱爲錨標記上的每一次點擊
function changeText() {
var taskDivClass = $('.panel-title a');
$(taskDivClass).each(
function() {
var $this = $(this);
if($this.hasClass('collapsed')) {
var taskDivSpanText = $this.find('.ui-hidden-accessible');
taskDivSpanText.html('expand');
}
else {
var taskDivSpanText = $this.find('.ui-hidden-accessible');
taskDivSpanText.html('collapse');
}
}
);
}
我使用each
方法changeText
功能的JavaScript的,因爲有多個這樣的塊中的每個點擊事件,只有特定的跨度應該改變。
.collapsed
類在用戶點擊錨標籤時動態切換。
問題出在第一次用戶點擊錨標籤時,文本未被切換。在下一次點擊它確實。
我真的不知道我在這裏錯過了什麼。如果有人有線索,請指出。
你不調用該函數。在 –
之後添加'changeText();'請注意,如果這就是你正在使用的jQuery UI有事件處理程序和鉤子。 – adeneo
我正在使用它來將函數綁定到click事件:'$(「。panel-heading」)。click(changeText);' – anwartheravian