удалите часть URL-адреса

#javascript #jquery

#javascript #jquery

Вопрос:

Кто-нибудь знает, как удалить часть URL.

Например, у меня есть 3 источника img, каждый из которых находится в своем собственном классе div под названием «showimage».

 <div class="showimage"><img src="http://www.mydomain.com/image1-thumb.JPG" /></div>
<div class="showimage"><img src="http://www.mydomain.com/image2-thumb.JPG" /></div>
<div class="showimage"><img src="http://www.mydomain.com/image3-thumb.JPG" /></div>
  

Я хочу, чтобы во всех URL-адресах был удален символ «-thumb», чтобы исходники img читались;

 <div class="showimage"><img src="http://www.mydomain.com/image1.JPG" /></div>
<div class="showimage"><img src="http://www.mydomain.com/image2.JPG" /></div>
<div class="showimage"><img src="http://www.mydomain.com/image3.JPG" /></div>
  

У меня есть доступ только к CSS, javascript или jQuery.

спасибо за помощь.

Комментарии:

1. Как насчет: "<div class="showimage"><img src="http://www.mydomain.com/image1-thumb.JPG" /></div>".replace("-thumb", "") или вам нужен подробный ответ с использованием JS?

2. нет, мне это было нужно с помощью JS, потому что у меня нет доступа к коду. спасибо за помощь!

3. вы правы, но у меня есть тысячи изображений, которые нужно удалить, поэтому я не могу указать все URL-адреса. Я думаю, мне нужно было бы это сделать, если бы я использовал ваш код.

Ответ №1:

 $("div.showimage img").attr("src",function(){
    return this.src.replace("-thumb","");
});
  

Комментарии:

1. @user721521: Это действительно сработало? потому что код на самом деле неправильный. Так и должно быть $("div.showimage img").attr("src",function(i, src){return src.replace("-thumb","");}); . this ссылается на текущий элемент, а не на src значение.

2. @Felix Kling Код раньше не работал, и приведенная ниже фраза «работает как шарм» предназначалась для jSang. Я протестировал ваш код и приведенный ниже jSang, и они оба работают. Спасибо всем!

Ответ №2:

Вы можете сделать что-то вроде этого:

 $(".showimage img").each(function() {
    var imgSrc = $(this).attr("src");
    imgSrc = imgSrc.replace("-thumb","");
    $(this).attr("src",imgSrc);
});