2016-09-15 2 views
0

У меня есть форма, где <label> изменяется на input:placeholder-shown (https://jsfiddle.net/Moor/3r1uL9n6/). Работает нормально, но только в немногих браузерах. Как добавить и удалить какой-либо класс с помощью jQuery для замены этого не-кросс-браузера input:placeholder-shown?Как заменить псевдокласс: placeholder-show with jquery

+0

[ '.attr()'] (https://api.jquery.com/attr/), [ '.addClass()'] (https://api.jquery.com/addClass/), ['.removeClass()'] (https://api.jquery.com/removeClass/) – Andreas

+0

Спасибо, @Andreas, но я не настолько опытен с jQuery. Как проверить, нет ли входного значения или нет на ходу? –

ответ

1
You can use jQuery: 

$("#my_input").on("keydown keypress keyup paste", function() { 

    var textColor = $(this).val() ? "red" : "green"; 

    $("div label").css({"color" : textColor}); 

}); 
+0

Пробовал - Это не так. Или я тупой. –

+0

Я уверен, что вы не глупы, иначе вы не смогли бы создать JSfiddle! Я попробовал это в вашей скрипке - когда присутствует атрибут placeholder, но заполнитель пуст или пробел, метка зеленая, но если присутствует непустой, не-пробельный заполнитель, ярлык красный. Разве это не то, что вы искали? –

+0

Возможно, я ошибся. Не могли бы вы раздобыть мою скрипку? –

Смежные вопросы