Показать сообщение отдельно
  #10 (permalink)  
Старый 13.02.2017, 15:13
Новичок на форуме
Отправить личное сообщение для kirito0709 Посмотреть профиль Найти все сообщения от kirito0709
 
Регистрация: 10.02.2017
Сообщений: 6

Все круто. Все работает. Благодарю еще раз сенсея Рони Однако я так и не смог до конца понять логику скрипта.

$(function() { //объявляем функцию
    var b = [0, 0, 0], //объявляем переменную в виде массива (не понял почему именно такие числа) (вроде как нулевые  элементы массива каждой из трех групп радиокнопок)
        d = [15, 3, 1]; //объявляем переменную в виде массива (не понял почему именно такие числа)
    $("#form1, #form2, #form3").each(function(e, c) { //здесь для каждого блока с указанными id объявляем функцмию с 2мя параметрами (переменная "е" это видимо индекс элемента массива в котором хранятся id  div-ов с радиокнопками  )
        var f = $("input", c); //объявляем переменную f которая высчитывается по функции с параметрами input и c (видимо с это родительский блок в котором лежит кликнутый input)
        $(c).on("click", "input", function(a) { //
            a = f.index(this); //видимо передаем в переменную "а" индекс кликнутой кнопки
            b[e] = a; //это я не понял(вроде берем из массива b элемент с индексом e)
            a = b.reduce(function(a, b, c) { //передаем для каждого ранее определенного индекса массива его соотвествующее значение (более точно не могу понять это действие)
                return a + b * d[c] // возвращаем что-то. Что именно я не понял, а именно d[c] не понял
            }, 0);
            $("#result").html(++a + ' картинка') //тут увеличиваем значение "а"  на 1 и записываем полученное значение в переменную "а" и добавляем слово картинка
        })
    })
});


В общем я почитал за эти 3 дня учебник js, вылавливая моменты указанные в данном скрипте. Попытался выстроить логику скрипта, чтобы потом смочь повторить его самостоятельно, но у меня не получилось. Если кому-то будет не лень, прошу объяснить мне непонятные мне моменты в данном скрипте.
Ответить с цитированием