Показать сообщение отдельно
  #1 (permalink)  
Старый 16.02.2018, 10:32
Аватар для kvizor34
Аспирант
Отправить личное сообщение для kvizor34 Посмотреть профиль Найти все сообщения от kvizor34
 
Регистрация: 08.02.2018
Сообщений: 50

Непонятки с событием click...
Значит вот этот скрипт работает без нареканий:

function selectbox() {
    $('.search-filter > p.search-filter__value').click(function () {
        var currentValue = $(this).parent().css("overflow");
        if (currentValue == "hidden") {
            $(this).parent().css({
                "overflow": "visible",
                "border-bottom-color": "transparent",
                "background-color": "#F9F9F9"
            });
            $(this).siblings('img').css({borderRadius: "1000px", transition: ".2s", transform: "rotate(180deg)"});
        }
        else {
            $(this).parent().css({
                "overflow": "hidden",
                "border-bottom-color": "#E5E5E5",
                "background-color": "transparent"
            });
            $(this).siblings("img").css({transform: "rotate(0deg)"});
        }
    })
    $('.search-filter__box > li').click(function () {
        $(this).parent().parent().css({
            "overflow": "hidden",
            "border-bottom-color": "#E5E5E5",
            "background-color": "transparent"
        });
        $(this).parent().siblings("img").css({transform: "rotate(0deg)"});
        $(this).parent().siblings("p").text($(this).text());
    })
}

$(document).ready(function (){
    selectbox()
});


Но я решил вынести оба события click за пределы их функции (selectbox), у меня получилось следующее:

function selectboxopen() {
    var currentValue = $(this).parent().css("overflow");
    if (currentValue == "hidden") {
        $(this).parent().css({"overflow":"visible","border-bottom-color":"transparent","background-color":"#F9F9F9"});
        $(this).siblings('img').css({borderRadius: "1000px", transition: ".2s", transform: "rotate(180deg)"});
    }
    else {
        $(this).parent().css({"overflow":"hidden","border-bottom-color":"#E5E5E5","background-color":"transparent"});
        $(this).siblings("img").css({transform: "rotate(0deg)"});
    }
}

function selectboxselect() {
    $(this).parent().parent().css({"overflow":"hidden","border-bottom-color":"#E5E5E5","background-color":"transparent"});
    $(this).parent().siblings("img").css({transform: "rotate(0deg)"});
    $(this).parent().siblings("p").text($(this).text());
}

$(document).ready(function (){
    $('.search-filter > p.search-filter__value').click(function () {
        selectboxopen()
    });
    $('.search-filter__box > li').click(function () {
        selectboxselect()
    })
});


Но он не работает (в консоли ошибок нет), я его перечитал 6 раз, уже голову сломал, КОД ТОТ-ЖЕ САМЫЙ - что с ним не так?
Ответить с цитированием