Возникли проблемы с оператором jquery if/else и эффектом slide, скрывающим последний элемент
Это мой первый jquery-скрипт, который я собрал сам. У меня проблема с попыткой заставить оператор if / else работать. Я просто хочу, чтобы скрипт не запускался, если в данный момент отображается поле / ссылка, по которой вы щелкаете.
Вот скрипт, работающий без оператора if: http://jsfiddle.net/Vitruvius/yqMAN/
$('.link').click(function () {
var parentName = $(this).closest('ul').attr('id');
var boxNumber = $(this).attr('id');
$('.' + parentName).children('.active').toggle('slide',{direction:'right'},function(){
$('.' + parentName + ' ' + 'div').removeClass('active');
$('.' + parentName).children('.' + boxNumber).show().effect('slide').addClass('active');
});
});
Вот моя попытка утверждения if: http://jsfiddle.net/Vitruvius/h8CMU/
$('.link').click(function () {
var parentName = $(this).closest('ul').attr('id');
var boxNumber = $(this).attr('id');
if($('.' + parentName).children('.' + boxNumber).hasClass('active')){
return:false;
}
else {
$('.' + parentName).children('.active').toggle('slide',{direction:'right'},500,function(){
$('.' + parentName + ' ' + 'div').removeClass('active');
$('.' + parentName).children('.' + boxNumber).show().effect('slide').addClass('active');
});
}
});
Кроме того, кто-нибудь знает, почему эффект слайда скрывает последний элемент, прежде чем он заканчивает скольжение? Я нигде не мог найти ответ.
Пожалуйста, дайте мне знать, если у вас есть какие-либо советы и / или предложения. Благодарю.
1 ответ
2013-08-13 22:55