jquery, $= не работает с точкой

Тема в разделе "Другие языки", создана пользователем zek24, 29 июл 2011.

Модераторы: Цукер
  1. zek24

    zek24

    Moderator
    Регистр.:
    14 ноя 2009
    Сообщения:
    776
    Симпатии:
    230
    привет,
    подскажите, почему при выборке в jquery, типа
    Код:
    $('img[src $= .png]');
    скрипт не работает, а так
    Код:
    $('img[src $= png]');
    все находит?
    Может точку нужно экранировать?
    Спасибо за подсказку.
     
  2. arman29

    arman29 Генератор идей

    Moderator
    • Супермодератор
    Регистр.:
    30 июн 2008
    Сообщения:
    1.235
    Симпатии:
    654
    попробуйте так
    Код:
    .prepend($('<img />').attr('src', 'ваша_папка/'+arr[this.id]+'.png'))
     
  3. polyetilen

    polyetilen Заблокирован

    Регистр.:
    10 авг 2006
    Сообщения:
    814
    Симпатии:
    474
    $('img[src $= .png]'); когда-то такое работало в версии 1.4.2, а в последней версии 1.6.2 не работает.
    Заэкранировал точку и работает так
    Код:
    $('img[src $= \\.png]')
    
    но если будет .Png то не найдёт.

    Вот регистро-независимые варианты
    Код:
            $('img').each(function (i) {
                if($(this).attr("src").match(/\.png$/i)){
                    console.log($(this).attr("src"));
                }
            });
            
            $('img').filter(function() {
                return this.src.match(/\.png$/i);
            }).each(function (i) {
                console.log($(this).attr("src"));
            });