Заменить значения параметров URL в ссылках, используя JavaScript / jQuery? - PullRequest
1 голос
/ 02 августа 2011

Моя фотогалерея в стиле лайт-бокса выводит код, как показано ниже. Я предоставил код для двух миниатюр.

Значения параметров для «m» и «s» всегда будут «150» и «true». Я хотел бы изменить это на m = 250 и s = false.

Я новичок в JavaScript и jQuery. Если у вас есть предложение, пожалуйста, помогите мне с тем, где разместить код на странице. Спасибо.

<div class="thumbTight MainContent">
    <div class="thumbContents">
        <a href="/PhotoGallery/banana.jpg" rel="lightbox[2065379]" title="Banana">
            <img src="/ResizeImage.aspx?img=/PhotoGallery/banana.jpg&amp;m=150&amp;s=true" alt="Banana" />
        </a>
        <div class="description" style="display: none;"></div>
    </div>
</div>

<div class="thumbTight">
    <div class="thumbContents">
        <a href="/PhotoGallery/cantaloupe.jpg" rel="lightbox[2065379]" title="Cantaloupe">
            <img src="/ResizeImage.aspx?img=/PhotoGallery/cantaloupe.jpg&amp;m=150&amp;s=true" alt="Cantaloupe" />
        </a>
        <div class="description" style="display: none;"></div>
    </div>
</div>

Ответы [ 2 ]

0 голосов
/ 02 августа 2011

Вы можете запустить этот jQuery после загрузки страницы.Изображения начнут загружаться с другого URL-адреса, ваш код запустится и изменит URL-адреса изображений, а затем загрузится и отобразится новый.Вы ничего не можете сделать на стороне клиента, чтобы предотвратить первоначальное отображение, если только вы на самом деле не используете CSS, так что их изображения изначально скрыты и становятся видимыми только после того, как вы установите желаемый URL.посмотрите демо здесь: http://jsfiddle.net/jfriend00/UdnFE/.

0 голосов
/ 02 августа 2011

В обработчике готовности документа используйте каждый , чтобы перебирать миниатюры (изображения внутри div с классом thumbContents) и назначать атрибут src исходному атрибуту src с требуемымзамены.

$(function() {
    $('.thumbContents img').each( function() {
        var $img = $(this);
        $img.attr('src', $img.attr('src').replace(/m=150/,'m=250').replace(/s=true/,'s=false') );
    });
});
...