У меня есть метод click в jquery, но мне нужно, чтобы переменные внутри него запускались один за другим. Я использовал функции обратного вызова раньше с другими методами jquery, но здесь нет методов, которые используются, это просто вызов другой функции и изменение значения переменной. Поэтому я не знаю, как их включить в последовательность. Есть ли способ сделать так, чтобы функция вызывалась только после того, как значение переменной закончено?Включение функции JQuery в обратный вызов
$('#irbis').on('click', function() {
globalswitchNumber = 0;
galleryshowUp();
});
Так что мне нужно globalswitchNumber, чтобы по завершении изменения до 0, а затем galleryshopUp получить казнены. Потому что теперь они исполняются одновременно.
Вот функция
function galleryshowUp() {
$('.protectiveshield').show(function() {
$('.mainscreen').hide(0, function() {
$('.mainpanel').clearQueue().animate({
width: "100px",
height: "100px",
left: "250px"
}, function() {
$('.screencontainer').animate({
height: "100px",
width: "100px"
}, 0, function() {
$('.mainpanel').animate({
width: "805px",
height: database[globalswitchNumber].frameheight,
paddingTop: "218px"
}, function() {
$('.topscreen').animate({
top: "-200px"
}, 400);
$('.screencontainer').delay(0).animate({
height: database[globalswitchNumber].frameheight,
width: "805px"
}, 0);
$('#galleryone').attr('src', database[globalswitchNumber].galleryone);
$('#galleryonelink').attr('href', database[globalswitchNumber].galleryonelink);
$('#galleryone').css("display", database[globalswitchNumber].galleryonedisplay);
$('#gallerytwo').attr('src', database[globalswitchNumber].gallerytwo);
$('#gallerytwolink').attr('href', database[globalswitchNumber].gallerytwolink);
$('#gallerytwo').addClass(database[globalswitchNumber].gallerytwodisplay);
$('#gallerythree').attr('src', database[globalswitchNumber].gallerythree);
$('#gallerythreelink').attr('href', database[globalswitchNumber].gallerythreelink);
$('#gallerythree').addClass(database[globalswitchNumber].gallerythreedisplay);
$('#galleryfour').attr('src', database[globalswitchNumber].galleryfour);
$('#galleryfourlink').attr('href', database[globalswitchNumber].galleryfourlink);
$('#galleryfour').addClass(database[globalswitchNumber].galleryfourdisplay);
$('#galleryfive').attr('src', database[globalswitchNumber].galleryfive);
$('#galleryfivelink').attr('href', database[globalswitchNumber].galleryfivelink);
$('#galleryfive').addClass(database[globalswitchNumber].galleryfivedisplay);
$('#gallerysix').attr('src', database[globalswitchNumber].gallerysix);
$('#gallerysixlink').attr('href', database[globalswitchNumber].gallerysixlink);
$('#gallerysix').addClass(database[globalswitchNumber].gallerysixdisplay);
$('#galleryseven').attr('src', database[globalswitchNumber].galleryseven);
$('#gallerysevenlink').attr('href', database[globalswitchNumber].gallerysevenlink);
$('#galleryseven').addClass(database[globalswitchNumber].gallerysevendisplay);
$('#galleryeight').attr('src', database[globalswitchNumber].galleryeight);
$('#galleryeightlink').attr('href', database[globalswitchNumber].galleryeightlink);
$('#galleryeight').addClass(database[globalswitchNumber].galleryeightdisplay);
$('#gallerynine').attr('src', database[globalswitchNumber].gallerynine);
$('#galleryninelink').attr('href', database[globalswitchNumber].galleryninelink);
$('#gallerynine').addClass(database[globalswitchNumber].galleryninedisplay);
$('#galleryten').attr('src', database[globalswitchNumber].galleryten);
$('#gallerytenlink').attr('href', database[globalswitchNumber].gallerytenlink);
$('#galleryten').addClass(database[globalswitchNumber].gallerytendisplay);
$('#galleryeleven').attr('src', database[globalswitchNumber].galleryeleven);
$('#galleryelevenlink').attr('href', database[globalswitchNumber].galleryelevenlink);
$('#galleryeleven').addClass(database[globalswitchNumber].galleryelevendisplay);
$('#gallerytwelve').attr('src', database[globalswitchNumber].gallerytwelve);
$('#gallerytwelvelink').attr('href', database[globalswitchNumber].gallerytwelvelink);
$('#gallerytwelve').addClass(database[globalswitchNumber].gallerytwelvedisplay);
$('#gallerythirteen').attr('src', database[globalswitchNumber].gallerythirteen);
$('#gallerythirteenlink').attr('href', database[globalswitchNumber].gallerythirteenlink);
$('#gallerythirteen').addClass(database[globalswitchNumber].gallerythirteendisplay);
$('#galleryfourteen').attr('src', database[globalswitchNumber].galleryfourteen);
$('#galleryfourteenlink').attr('href', database[globalswitchNumber].galleryfourteenlink);
$('#galleryfourteen').addClass(database[globalswitchNumber].galleryfourteendisplay);
$('#galleryfifteen').attr('src', database[globalswitchNumber].galleryfifteen);
$('#galleryfifteenlink').attr('href', database[globalswitchNumber].galleryfifteenlink);
$('#galleryfifteen').addClass(database[globalswitchNumber].galleryfifteendisplay);
$('#gallerysixteen').attr('src', database[globalswitchNumber].gallerysixteen);
$('#gallerysixteenlink').attr('href', database[globalswitchNumber].gallerysixteenlink);
$('#gallerysixteen').addClass(database[globalswitchNumber].gallerysixteendisplay);
$('#galleryseventeen').attr('src', database[globalswitchNumber].galleryseventeen);
$('#galleryseventeenlink').attr('href', database[globalswitchNumber].galleryseventeenlink);
$('#galleryseventeen').addClass(database[globalswitchNumber].galleryseventeendisplay);
$('#galleryeighteen').attr('src', database[globalswitchNumber].galleryeighteen);
$('#galleryeighteenlink').attr('href', database[globalswitchNumber].galleryeighteenlink);
$('#galleryeighteen').addClass(database[globalswitchNumber].galleryeighteendisplay);
$('#gallerynineteen').attr('src', database[globalswitchNumber].gallerynineteen);
$('#gallerynineteenlink').attr('href', database[globalswitchNumber].gallerynineteenlink);
$('#gallerynineteen').addClass(database[globalswitchNumber].gallerynineteendisplay);
$('#gallerytwenty').attr('src', database[globalswitchNumber].gallerytwenty);
$('#gallerytwentylink').attr('href', database[globalswitchNumber].gallerytwentylink);
$('#gallerytwenty').addClass(database[globalswitchNumber].gallerytwentydisplay);
$('#gallerytwentyone').attr('src', database[globalswitchNumber].gallerytwentyone);
$('#gallerytwentyonelink').attr('href', database[globalswitchNumber].gallerytwentyonelink);
$('#gallerytwentyone').addClass(database[globalswitchNumber].gallerytwentyonedisplay);
$('#videoframe').addClass(database[globalswitchNumber].videoframedisplay);
$('#videoframe').attr('src', database[globalswitchNumber].videoframe);
$('#videoframe').attr('height', database[globalswitchNumber].videoframeheight);
$('#captionone').html(database[globalswitchNumber].captionone);
$('#captiontwo').html(database[globalswitchNumber].captiontwo);
$('#captionthree').html(database[globalswitchNumber].captionthree);
setTimeout(function() {
$('#irbiswindow').html($("#tableToClone").clone());
}, 0);
$('#irbiswindow').show();
$('.protectiveshield').hide();
});
});
});
});
});
}
Как определяется 'globalswitchNumber'? и пытаетесь ли вы использовать его в 'galleryshowUp();'? – DelightedD0D
Назначение переменной всегда будет завершено до вызова функции. Можете ли вы показать определение 'galleryshowUp()'? Если функция использует какие-либо операции с асинхронными/событиями, возможно, она не выполнила свои задачи до того, как произойдет второй щелчок, снова сбросив переменную на '0'. –
var globalswitchNumber; является глобальной переменной, а galleryshowUp() - огромная функция с изменением образов внутри, вытащил из базы данных json. На каждом клике globalswitchNumber изменяется ключ массива, начиная с 0 и выше. Поэтому сначала мне нужно его изменить, а затем выполнить gallershowUp, но пока он делает все это одновременно. –