2015-12-10 2 views
0

У меня есть страница с несколькими изображениями, которые нужно изменить. Я не могу добраться до изображений по идентификатору, поскольку они генерируются сервером, поэтому всегда меняйте его, но я могу получить к ним имя класса.Измените источник img на основе определенного изображения

Так что я хочу изменить только 4 из нескольких изображений значков на странице, получив источник изображения, и его проверка соответствует критериям изображения, которое я хочу изменить, а затем поменяйте на новое изображение значка.

У меня есть некоторые неуклюжие версии в javascript и JQuery, но я действительно ищу гладкую версию, которая является функциональной и простой.

Я нашел это работало отлично для 4 отдельных изображений, требующих изменений в нескольких местах:

function changeArrow() { 
      $('img[src="chevron-orange-round-down.jpg"]').attr('src', 'chevron-blue-round-down.jpg') 
      $('img[src="chevron-orange-round-up.jpg"]').attr('src', 'chevron-blue-round-up.jpg') 
      $('img[src="chevron-orange-round-left.jpg"]').attr('src', 'chevron-blue-round-left.jpg') 
      $('img[src="chevron-orange-round-right.jpg"]').attr('src', 'chevron-blue-round-right.jpg') 
     } 

Я ожидал, что мне нужен цикл, такие как .each как предложено ниже, но это изменило все экземпляры изображения которые соответствовали критериям.

ответ

0

Вы можете установить Src Аттрибут $('.image').attr('src', 'val');

или простой петлей

$('.image').each(function(i, obj) { 
    if($(this).attr('src')=='some criteria') 
    { 
    $(this).attr('src', 'val'); 
    } 
}); 
+0

Спасибо, так что я что-то вроде этого: $ ('IMG [SRC = "красная стрелка вверх. jpg "] '). attr (' src ',' blue-arrow-up.jpg ') // повторяется на изображение – SpeckyMan

+0

, и теперь он работает? –

+0

Я дам ему попробовать в ближайшее время - хорошо выглядит, хотя, я обновлю, когда закончится, cheers – SpeckyMan

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