Я новичок в javascript/jQuery, это действительно меня озадачивает.Функция Запущена перед fadeOut(); закончен
То, что я пытаюсь достичь здесь
- На переключаясь на # sameDayTab JQuery будет искать .changeAlert и FADEOUT это контейнер DIV, когда переключены снова DIV будет исчезать (это работает хорошо.)
- Каждый переключатель также вызывает функцию, которая сообщает мне, сколько .changeAlert присутствует на странице и обновляет номер соответствующим образом в промежутке. Проблема в том, что когда я сначала нажимаю на привязанный якорь, число видимых должно быть 0, поскольку .changeAlert был скрыт fadeOut, вместо этого он возвращает количество классов, присутствующих при загрузке страницы, это значение никогда не изменяется независимо от того, сколько раз включается переключатель ,
Любая помощь очень ценится.
function totalNumFares()
{
var n = $('.changeAlert:visible').size();
$('.numFares').replaceWith('<span class=\"numFares\">'+ n +'</span>');
}
totalNumFares();
//Toggle On/off Same Day Connections
$('a#sameDayTab').toggle(function() {
$('.changeAlert').parent().parent().parent().parent().parent().fadeOut();
totalNumFares();
},function(){
$('.changeAlert').parent().parent().parent().parent().parent().fadeIn();
totalNumFares();
});
Возможно, я ошибаюсь, но я помню, что существует разница, если вы вызываете функцию с круглыми скобками и без них, относительно того, как сразу это называется, - это что, балони? – user97410
@chibineku - Когда вы используете функцию как обратный вызов, вы передаете только имя, это передает функцию, см. Мой ответ ниже для примера ... когда вы помещаете в него скобки, вы на самом деле * вызываете * функцию и * прохождение * результата, который не является тем, что вы хотите в 99% случаев с обратными вызовами. –