Я пытаюсь переключить текст span каждый раз, когда щелкнет его основной тег привязки. Вот HTML:jQuery text not toggling при первом щелчке
<h2 class="panel-title">
<a href="#collapse1">
<span class="ui-hidden-accessible">expand</span>
</a>
</h2>
в то время как это Java-функции changeText
, которая вызывается на каждом щелчке тега привязки
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
, потому что есть множество таких блоков на странице, и для каждого события клика только этот конкретный интервал должен измениться.
Класс .collapsed
динамически переключается на тег привязки, когда пользователь нажимает на него.
Проблема заключается в том, когда первый пользователь нажимает на якорный тег, текст не переключается. При следующем нажатии это делает.
Я действительно не уверен, что мне здесь не хватает. Если у кого-то есть ключ, пожалуйста, укажите его.
Вы не называя эту функцией. add 'changeText();' после –
Обратите внимание, что в jQuery UI есть обработчики событий и перехватчики для этого, если это то, что вы используете? – adeneo
Я использую это, чтобы привязать функцию к событию click: '$ (". Panel-heading "). Click (changeText);' – anwartheravian