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 21:01

Цитата:

Сообщение от cadijob
Как сделать, чтобы в переменную заносил не 0 и 1, а true и false

OpenArea=[+$(this).is(":hidden")];убрать красное

cadijob 11.07.2017 21:02

OpenArea=[$(this).is(":hidden")];
вот так надо

cadijob 11.07.2017 21:03

Цитата:

Сообщение от cadijob (Сообщение 458212)
OpenArea=[$(this).is(":hidden")];
вот так надо

Предыдущие не увидел... Спасибо.

cadijob 11.07.2017 21:17

Цитата:

Сообщение от рони (Сообщение 458204)
да

Мне кажется, что нет. Т.к.
$(".canDisable").click(function() {
        alert("ok");
        if (OpenArea == false) {
            console.log(OpenArea);
            $(this).css( "transform", "scale(0.85)" );
        }
    });
Даже alert не работает. А когда pointer-events: auto; то alert работает. Тогда как отключить ссылку?

рони 11.07.2017 21:45

cadijob,
$("li").on("click", function() {
  alert($("a", this).text());
})

рони 11.07.2017 21:52

Цитата:

Сообщение от cadijob
Тогда как отключить ссылку?

preventDefault() в нужное время, в нужном месте, но это известно только вам.

рони 11.07.2017 22:00

cadijob,
можно только гадать, что вы хотите сделать ...
$(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();
})
});

cadijob 11.07.2017 22:06

Цитата:

Сообщение от рони (Сообщение 458220)
cadijob,
можно только гадать, что вы хотите сделать ...
$(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();
})
});

Когда display: none; то ссылка работала как обычно. А когда display != none, то только jQuery и Ajax могут взаимодействовать с этим элементом.

рони 11.07.2017 22:09

cadijob,
не понимаю

cadijob 11.07.2017 22:15

Цитата:

Сообщение от рони (Сообщение 458224)
cadijob,
не понимаю

"#block-links" имеет стиль display. Когда display: none то jQuery не взаимодействует(как должно быть, но это не так) с ".tags li"
$(".tags li").on("click", function(){
        alert($("a", this).text());
        // if (OpenArea == false) {
        //     console.log(OpenArea);
        //     $(this).css( "transform", "scale(0.85)" );
        // }
    });

То есть эта функция не будет работать. Когда display != none то будет.
if(OpenArea == false){
        $(".tags li").on("click", function(){
            alert($("a", this).text());
            // if (OpenArea == false) {
            //     console.log(OpenArea);
            //     $(this).css( "transform", "scale(0.85)" );
            // }
        });

    }

Пример выше не работает.


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