Показать сообщение отдельно
  #4 (permalink)  
Старый 23.12.2017, 22:29
Интересующийся
Отправить личное сообщение для vospa Посмотреть профиль Найти все сообщения от vospa
 
Регистрация: 09.12.2017
Сообщений: 16

Мда... заработать то заработало. Теперь следующий скрипт включается строго по окончании предыдущего. Но теперь другая проблема.
Если у меня все чекбокса отмечены, все летит на ура. Проблема, если не все отмечены.
Поначалу, на радостях, я записал вот так:

var ctd1 = document.querySelector('#shest1');
var ctd2 = document.querySelector('#shest2');
var ctd3 = document.querySelector('#shest3');

$("#start_a").click(function(a) {
    csInterface.evalScript('$._ext.evalFile("' + extensionRoot + 'b_cor_a/Start.jsx")', function() {
        if (ctd1.checked) {
            csInterface.evalScript('$._ext.evalFile("' + extensionRoot + 'b_cor_a/Minimum_Settings_A.jsx")', function() {
                if (ctd2.checked) {
                    csInterface.evalScript('$._ext.evalFile("' + extensionRoot + 'add_cor_a/Skitalets_Darken_Blue_Sky_v1_1_A.jsx")', function() {
                        if (ctd3.checked) {
                            csInterface.evalScript('$._ext.evalFile("' + extensionRoot + 'b_cor_a/Contrast_Midtones_A.jsx")')
                        }
                    })
                }
            })
        }
    });
});


После НЕ отмеченного чекбокса скрипт останавливается. Ну, так и должно быть, собственно. Если проставить везде else можно заставить его работать, как нужно. Но у меня не 3, а под 30 чекбоксов. Это же безумное ветвление получится на все варианты.
Голова кругом идет. Понимаю, что проблема решаема скорее всего, но ввиду моей непроходимой нубости в скриптинге, мне не по зубам. Подскажите, плиииз, как можно избежать такого ветвления?
Ответить с цитированием