• Страница 1 из 1
  • 1
Модератор форума: JonMagon  
Скрипт которые обвернёт все картинки в ссылку <a> <a/>
Rad_van_Cor
Сообщений: 1179
Репутация: 437

Сообщение # 1 | 17:40:41
В общем на форуме, если картинку загрузить через форму прикрепления файлов, то она будет увеличиваться в ulightbox.
А если добавить картинку по средствам BB кодов по прямой ссылке, то увеличиваться она не будет.
А мне это нужно. Решить это можно, если скриптом оборачивать все картинки в $MASSEGE$ в ссылку с классом class="ulightbox" ну и ещё нужно что бы скрипт по мимо класса прописывал и ID.

Короче, изначально код картинки выглядит так

Код
<img align="left"  src="http://site.ru/kartinka.jpg"></img>


Мне нужно, что бы скрипт оборачивал картинку в ссылку + в href вставлял ссылку на эту картинку. В общем что бы было так:

Код
<a id="fm_attach1" class="ulightbox" rel="fancybox-thumb" href="http://site.ru/kartinka.jpg" target="_blank">
<img align="left"  src="http://site.ru/kartinka.jpg"></img>
</a>


P.S ID блока в котором находится $MASSEGE$ fmd1
Ну что бы типа скрипт знал какие картинки оборачивать нужно : #fmd1 img

Я думаю это вполне реально)

Сообщение отредактировал Rad_van_Cor - Среда, 01 Май 2013, 17:43:19
NZT
Сообщений: 369
Репутация: 483

Сообщение # 2 | 18:50:34
Цитата (Rad_van_Cor)
Я думаю это вполне реально)

Я тоже... angel
Rad_van_Cor
Сообщений: 1179
Репутация: 437

Сообщение # 3 | 18:54:30
NZT, видимо тоже хочешь сделать увеличивалку картинок добавленных по прямым ссылкам?))
Ни чего, я думаю fflesh что нибудь нашаманит ))

Anglerdima
Сообщений: 133
Репутация: 13

Сообщение # 4 | 19:35:58
Да... такой скриптик был бы очень кстати, и не только на форуме.
fflesh
Сообщений: 1784
Репутация: 1314

Сообщение # 5 | 19:44:09
Код
<script type="text/javascript">
$('#fmd1 img').each(function(i){
     $(this).wrap('<a id="fm_attach'+i+'" class="ulightbox" rel="fancybox-thumb" href="'+this.src+'" target="_blank"/>');
};);
</script>


Даже вот так, .. вдруг она уже в ссылке ))
Код
<script type="text/javascript">
$('#fmd1 img').each(function(i){
  if(this.parentNode.tagName!='A'){
   $(this).wrap('<a id="fm_attach'+i+'" class="ulightbox" rel="fancybox-thumb" href="'+this.src+'" target="_blank"/>');
  }
});
</script>

..

Всё написанное выше - моё личное мнение и на абсолютную правоту не претендует.
Есть вопросы лично ко мне - пиши сюда: http://likbezz.ru/forum/8
Сообщение отредактировал fflesh - Среда, 01 Май 2013, 19:54:39
Rad_van_Cor
Сообщений: 1179
Репутация: 437

Сообщение # 6 | 20:02:47
fflesh, ах, превосходно, ввторой вариант вообще суперски продуманный!) Спасибо большое!) Разбирайте ребятки)

paRAdogs
Сообщений: 7
Репутация: 0

Сообщение # 7 | 13:41:43
Цитата (fflesh)
Даже вот так, .. вдруг она уже в ссылке ))

Доброго времени суток!
А возможно ли то же самое сделать в Доске объявлений и как?
А самое главное, куда этот скрипт вставлять?
Спасибо smile
Rad_van_Cor
Сообщений: 1179
Репутация: 437

Сообщение # 8 | 17:41:03
paRAdogs, возоможно где угодно.
Вставляй просто скрипт в нижнюю часть сайта (что бы он подгружался на всех страницах) и заменяй id в скрипте на свои

Демоник
Сообщений: 2
Репутация: 2

Сообщение # 9 | 03:18:49
Спасибо тоже помогла связка замены атрибута картинки и обертка в класс ulightbox:

<script>
$('#bodynews img').attr({'width':'320px'});
</script>

<script type="text/javascript">
$('#bodynews img').each(function(i){
if(this.parentNode.tagName!='A'){
$(this).wrap('<a id="fm_attach'+i+'" class="ulightbox" rel="$ID$" href="'+this.src+'" target="_blank"/>');
}
});
</script>

(К ста а можно это в один скрипт загнать, а не 2 как у меня сейчас?)

И подскажите как в новостях, зная количество картинок и их название в цикле вывести в самой новости:

типа:

for i:=1 to 6 do
{
<br>
<br>
<img src="/News/05-11-2013/i.jpg"</a>
}

а не как сейчас:

<br>
<br>
<img src="/News/05-11-2013/1.jpg"</a>
<br>
<br>
<img src="/News/05-11-2013/2.jpg"</a>
.....
.....

За ранее всем спасибо!
Miss_Esq
Сообщений: 13859
Репутация: 4159
Уровень замечаний:

Сообщение # 10 | 03:26:42
Демоник, ?????
Код
<script>  
  $('#bodynews img').attr({'width':'320px'});   
  $('#bodynews img').each(function(i){if(this.parentNode.tagName!='A'){$(this).wrap('<a id="fm_attach'+i+'" class="ulightbox" rel="$ID$" href="'+this.src+'" target="_blank"/>');}});  
  </script>

Демоник
Сообщений: 2
Репутация: 2

Сообщение # 11 | 13:03:13
Сделал извратом

<script>
var num = ($("p#numimg").html());
var path = ($("p#path").html());

$("p#path").hide();
$("p#numimg").html('');
for(i=1;i<=num;i++){$("p#numimg").html(''+$("p#numimg").html()+'<br><br><img src="'+path+i+'.jpg">')};
</script>

В самой новости приходится добавлять:

<p id="path">/News/17-10-2013/</p>
<p id="numimg">2</p>

А есть ли возможность из новостей получить ее дату?
А также проверить наличие файлов?
Тогда все можно будет унифицировать...
Сообщение отредактировал Демоник - Пятница, 17 Янв 2014, 13:16:26
  • Страница 1 из 1
  • 1
Поиск:
Telegram
Будьте в курсе всех обновлений: подпишитесь на наш официальный Telegram-канал uCoz и задавайте вопросы в чате сообщества!