jQuery автоматически добавляет ссылку href, равную адресу изображения

#jquery #image #hyperlink #add

#jquery — запрос #изображение #гиперссылка #Добавить #jquery

Вопрос:

У меня есть div с несколькими изображениями, которые открываются в лайтбоксе (prettyphoto). Используя один код jquery, я заставил эти изображения автоматически открываться в лайтбоксе, присвоив атрибут rel всем элементам div. С помощью css я выбрал ширину / высоту миниатюр.

Теперь мне нужен аналогичный код, для того чтобы автоматически добавлять ссылку на себя. Возможно ли это?

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

Вот html:

 <div id="tab2" class="tab_content" style="text-align:center">
           <img src="images/img1_thumb.jpg" alt="image1"/>
        </div>
  

jquery — запрос:

 $(document).ready(function(){

            $('div.tab_content a').attr('rel', 'prettybox[grandsuite]')

            $("div.tab_content a").prettyPhoto({animation_speed:'normal',theme:'facebook',slideshow:false, autoplay_slideshow: false, social_tools:false, show_title:false, overlay_gallery:false});

        });
  

Спасибо!

Ответ №1:

Хорошо, значит, тебе нужно:

  • получите каждый элемент из Dom
  • извлекает его атрибут «href»
  • заменить «_thumb.jpg » с помощью «.jpg»
  • и, наконец, создайте окружающий элемент с параметром «href», установленным в исходное местоположение изображения

Давайте сделаем это:

 // Wrap all <img> with an <a> tag and set the link target to the image's src
$("div.tab_content img").wrap(function(){
    return '<a href="'   $(this).attr('src').replace('_thumb.jpg', '.jpg')   '"/>';
});
  

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

1. привет, спасибо за ваш ответ! к сожалению, это не работает, prettyphoto продолжает безуспешно пытаться загрузить изображение. в любом случае, идея состояла в том, чтобы иметь одно изображение, в данном случае, как называются imgs, img1.jpg будет одновременно миниатюрой (при просмотре в браузере) и полноразмерным изображением (на лайтбоксе); поэтому нет необходимости добавлять замену для _thumb.jpg … трудная задача у меня в руках!

2. (я думал о чем-то вроде ::: $(‘div.tab_content a’).attr(‘href’, ‘$(this).attr(‘src’)’); ::: но не могу заставить что-либо работать ..)