Удалить параметры из изображения src - PullRequest
0 голосов
/ 03 сентября 2018

Я пытаюсь удалить все параметры, которые добавляются в мой gif, так как они останавливают его для анимации.

Это код gif: <img src="/asset/News/6001/gif-anim.gif?thumbnail_width=2000&amp;thumbnail_height=500&amp;resize_type=CropToFit" height="500" width="2000" alt="">, но я хотел бы удалить все его параметры.

Я пытался с кодом ниже, но он не работает:

$('img').each(function () {
  var curSrc = $(this).attr('src');
  if ( curSrc === '/asset/News/6001/gif-anim.gif?thumbnail_width=2000&thumbnail_height=500&resize_type=CropToFit' ) {
    $(this).attr('src', '/asset/News/6001/gif-anim.gif');
  }
});

Есть идеи?

Редакция: Под «это не работает» я имею в виду, что это не изменяет src изображения

Ответы [ 2 ]

0 голосов
/ 03 сентября 2018

Три шага для обновления источника:

  1. Получить текущий источник.
  2. Извлечь подстроку из источника, который находится перед ?
  3. Установить источник изображения обратно.

Это должно работать для любого src в изображении.

$('img').each(function() {
    let curSrc = $(this).attr('src');     
    let newSrc = curSrc.substr(0, curSrc.indexOf('?'));
    $(this).attr('src', newSrc);
});
0 голосов
/ 03 сентября 2018

Если ваша цель состоит в удалении полной строки запроса из каждого изображения во время итерации, тогда лучше использовать .split ()

$(document).ready(function(){
    $('img').each(function () {
      var curSrc = $(this).attr('src');
      $(this).attr('src', curSrc.split('?')[0]);
    });
});

Рабочая скрипка: - http://jsfiddle.net/gL4pv985/

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