JQuery селектор, чтобы выбрать все текстовые входы не указанного класса - PullRequest
0 голосов
/ 30 мая 2018

В следующем коде jquery мне нужно пропустить некоторые поля ввода, имя класса которых не равно элементу

input [type = text] [class! = Item], это не работает

.Как добавить это исключение?

     $(document)  
                    .on('focus', 'input[type=text]")', function() { 
                        $('.footer').css('position', 'absolute');
                        $('.footer').css('bottom', ''); 
                    })

                    .on('blur', 'input[type=text]', function() { 
                        $('.footer').css('position', 'fixed');  
                        $('.footer').css('bottom', '0');
                    });

Ответы [ 2 ]

0 голосов
/ 30 мая 2018

Попробуйте

$("input[type='text']:not('.classname')");

Итак, добавив и изменив свой код:

$(document)
  .on('focus', "input[type='text']:not('.classname')", function() {
    $('.footer').css({
      'position': 'absolute',
      'bottom': 'auto'
    });
  })

  .on('blur', "input[type='text']:not('.classname')", function() {
    $('.footer').css({
      'position': 'fixed',
      'bottom': 0
    });
  });
0 голосов
/ 30 мая 2018

Вы хотите использовать селектор :not() в своем запросе:

См. Фрагмент результатов:

// 2 solutions here
// Using the class attribute $("input[type=text]:not([class=item])")
console.log($("input[type=text]:not([class=item])").length, "element matched.");

// Using the class selector $("input[type=text]:not('.item')")
console.log($("input[type=text]:not('.item')").length, "element matched.");


// Using the code from your question:
$("input[type=text]:not('.item')").on('focus', function() {
  $('.footer').css('position', 'absolute');
  $('.footer').css('bottom', '');
})

$("input[type=text]:not('.item')").on('blur', function() {
  $('.footer').css('position', 'fixed');
  $('.footer').css('bottom', '0');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" class="item">
<input type="text" class="item">
<input type="text">

Я добавил ваш код в мой фрагмент, но я не знаю, что вы хотите сделать с вашим элементом .footer.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...