2012-04-22 4 views
2

Я пытаюсь использовать jQuery для редактирования SRC изображения, если он пуст. Вот мой текущий код:

<script type="text/javascript"> 
    $(document).ready(function() { 
     var $this = $(this), 
      img = $('img'); 
     if img.attr("src", ""){ 
      $this.attr("src", "default.gif"); 
     } 
    }); 
</script> 

Это не работает. Текущей ошибкой, которую я получаю в консоли Chrome, является:
Uncaught SyntaxError: Неожиданный идентификатор

Может ли кто-нибудь помочь? Большое спасибо в продвинутом виде.
- Иордания.

ответ

12

attr() получает или задает атрибут. Он не оценивает и не сравнивает их. Что вам нужно сделать, это:

if ($this.attr('src') == '') 
    $this.attr('src','default.gif'); 
} 

Или, немного быстрее/более эффективным:

var that = this; 
if (that.src == ''){ 
    that.src = 'default.gif'; 
} 

И, как уже отмечалось, сообщение об ошибке предположительно вызвано бездействием скобок вокруг if заявления быть оцененным.

Ссылки:

+1

+1 Кроме того, указанная ошибка была связана с отсутствием скобок для оператора 'if'. – jli

+1

Почему да, это ... добавление всегда было! Вы, * uh *, должны были замаскировать его на вашем первом взгляде ... [... работает ...] = D –

1

После этого укажите точку с запятой.

var $this = $(this); 
Смежные вопросы