Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Не работает if (https://javascript.ru/forum/jquery/69675-ne-rabotaet-if.html)

рони 11.07.2017 23:12

cadijob,
или даже так, если обработчик выше например в li

<!DOCTYPE html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>title</title>

    <link href="https://fonts.googleapis.com/css?family=Roboto&amp;subset=cyrillic" rel="stylesheet">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <script>
$(function() {
    $("#open-close").show();
    $("#block-links").hide();
    $("#open-close").click(function(a) {
        a.preventDefault();
        $("#block-links").slideToggle(400)
    });
    $(".canDisable").on("click", function(a) {
 if ($("#block-links").is(":visible")) {a.preventDefault(); a.stopPropagation();
 $(this).parent().css( "transform", "scale(0.85)" );

 }
})
   $("li").on("click", function(a) {alert("переход");})

});
    </script>
</head>
<body>
    <div class="wrapper" id="scroll">

        <div class="container">
            <div class="botHeader">
                <a href="#" id="open-close">
                    <div class="talkBtn">
                        <p>Кнопка которая октрывает форму</p>
                    </div>
                </a>
            </div>
            <div class="borderShadow"></div>
            <div class="talk" id="block-links">
                <form action="">
                    <input type="text" name="textTitle" placeholder="Тема сообщения">
                    <textarea name="textarea" rows="8" cols="80" placeholder="Текст"></textarea>
                </form>
            </div>
            <div class="tags">
                <ul>
                    <li><a href=""  class="canDisable">Тег 1</a></li>
                    <li><a href=""  class="canDisable">Тег 2</a></li>
                    <li><a href=""  class="canDisable">Тег 3</a></li>
                    <li><a href=""  class="canDisable">Тег 4</a></li>
                    <li><a href=""  class="canDisable">Тег 4</a></li>
                    <li><a href=""  class="canDisable">Тег 5</a></li>
                    <li><a href=""  class="canDisable">Тег 6</a></li>
                    <li><a href=""  class="canDisable">Тег 7</a></li>
                    <li><a href=""  class="canDisable">Тег 8</a></li>
                    <li><a href=""  class="canDisable">Тег 9</a></li>
                    <li><a href=""  class="canDisable">Тег 10</a></li>
                    <li><a href=""  class="canDisable">Тег 11</a></li>
                    <li><a href=""  class="canDisable">Тег 12</a></li>
                </ul>
            </div>
            <div class="borderShadow"></div>
            <div class="posts">

                </div>
            </div>
        </div>
        <div class="footer">

        </div>

</body>
</html>

cadijob 11.07.2017 23:16

:( :( :(
Не туда вставил его... Извините.
Да видно, что он намного красивее моих костылей, но с моими я могу сделать так -
$(this).css( "transform", "scale(0.85)" );
то есть применить это свойство к li с классом tags. А вашем варианте как такое сделать?
Всё. Вижу

cadijob 11.07.2017 23:21

$("li").on("click", function(a)
            {
                alert("переход4");
            })

Не принтится alert.

рони 11.07.2017 23:22

Цитата:

Сообщение от cadijob
Не принтится alert.

что это значит?

cadijob 11.07.2017 23:23

Не выводится сообщение(alert)

рони 11.07.2017 23:24

Цитата:

Сообщение от cadijob
применить это свойство к li

смотрите код снова, пост №41
$(".canDisable").on("click", function(a) {
 if ($("#block-links").is(":visible")) {a.preventDefault(); a.stopPropagation();
 $(this).parent().css( "transform", "scale(0.85)" );

 }
})

рони 11.07.2017 23:27

Цитата:

Сообщение от cadijob
Не выводится сообщение(alert)

оно выводится когда форма скрыта, перед переходом на другую страницу.

cadijob 11.07.2017 23:27

$(".canDisable").on("click", function(a) {
            if ($("#block-links").is(":visible"))  a.preventDefault();
            console.log($(this).text());
            $(this).css( "transform", "scale(0.85)" );
        })

    });

Как сделать, что бы стиль применялся не к ссылке с классом canDisable, а к .tags li? К тому li по которому пользователь кликнул?

рони 11.07.2017 23:29

cadijob,
когда форма открыта, li трансформируется (новый вариант)

рони 11.07.2017 23:29

Цитата:

Сообщение от cadijob
Как сделать, что бы стиль применялся не к ссылке с классом canDisable, а к .tags li? К тому li по которому пользователь кликнул?

смотрите пост пост №41


Часовой пояс GMT +3, время: 06:51.