Russian TYPO3 community Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community  

Вернуться   Russian TYPO3 community > Обсуждение общих технических вопросов > Общие вопросы

Ответ
 
Опции темы Опции просмотра
Старый 07.07.2006, 17:42   #1
*****
Новенький
 
Аватар для *****
 
Регистрация: 15.06.2006
Сообщений: 20
Отправить сообщение для ***** с помощью ICQ
По умолчанию увеличение картинок по нажатию.

очень прошу помочь.
необходимо в контент выводить картинки до 5 штук. при нажатии на какую-либо из них, она должна показываться чуть ниже в увеличенном варианте.
была написана функция на js. в html это выглядит вот так
<html>
<head>
<script language="JavaScript">
function image_viewer(divid, imgname)
{
var img = document.getElementById(divid);
img.src = imgname;
img.style.display = "";
}
</script>
</head>
<body>
<form id="theform" name="theform">
<a href="javascript:image_viewer('theimg', '2423_full.jpg')"><img src='2423_full.jpg' width="150"></a>
<div id="thediv">
<img style="display:none" src="" id="theimg"></img>
</div>
</form>
</body>
</html>

довольно просто. проблема состоит в том, чтобы
1. выводить картинки в ссылках (думаю, если очень поискать, то можно найти записи для setup, которые будут оборачивать картинки в ссылки)
2. самое главное, что если сделать пункт 1, то получится, что такая процедура будет производиться со всеми картинками на сайте, а мне надо только с определенными
(уменьшенные изображения моделей мебели. должны увеличиваться соответственно)
советовали писать свой новый модуль, но у меня на это крайне мало времени и пока что опыта.
помогите, если знаете как.
спасибо.
***** вне форума   Ответить с цитированием
Старый 07.07.2006, 19:18   #2
void
Senior Member
 
Аватар для void
 
Регистрация: 14.03.2006
Адрес: Russia, Penza
Сообщений: 1,504
Отправить сообщение для void с помощью ICQ
По умолчанию

Как я понимаю, вам нужно, чтобы увеличивались только картинки внутри определенного div'a
Что мешает найти этот div через document.getElementById
var div=document.getElementById('mydiv'),
найти в нем картинки
var images = div.getElementsByTagName("IMG");
а затем каждой приписать свой onClick
for (i=0;i<images.length;i++)
{
images.onClick = function ()
{
тут допишите..
}
}
__________________
TYPO3 FAQ
void вне форума   Ответить с цитированием
Старый 07.07.2006, 20:47   #3
*****
Новенький
 
Аватар для *****
 
Регистрация: 15.06.2006
Сообщений: 20
Отправить сообщение для ***** с помощью ICQ
По умолчанию

Понимаете, в чем еще проблема.
когда типа уменьшает картинку, она кидеат ее в папку typo3temp/pics/
и меняет ее название, а сами оригиналы лежат в uploads. так что когда вы достанете img из дива, там будут не те пути, что нужно.
у меня уже крыша едет от всего этого. вроде бы все просто, а реализовать никак не получается.
***** вне форума   Ответить с цитированием
Старый 07.07.2006, 22:51   #4
void
Senior Member
 
Аватар для void
 
Регистрация: 14.03.2006
Адрес: Russia, Penza
Сообщений: 1,504
Отправить сообщение для void с помощью ICQ
По умолчанию

Хм... лучше написать свой плагин, возможно...
Или же помудрить с tt_content.image.20.1 (посмотрите в TypoScript Object Browser)
__________________
TYPO3 FAQ
void вне форума   Ответить с цитированием
Старый 07.07.2006, 23:50   #5
Pavel Antonov
Senior Member
 
Аватар для Pavel Antonov
 
Регистрация: 01.10.2004
Адрес: Россия, Москва
Сообщений: 1,204
Отправить сообщение для Pavel Antonov с помощью ICQ
По умолчанию

Цитата:
Сообщение от *****
Понимаете, в чем еще проблема.
когда типа уменьшает картинку, она кидеат ее в папку typo3temp/pics/
и меняет ее название, а сами оригиналы лежат в uploads. так что когда вы достанете img из дива, там будут не те пути, что нужно.
у меня уже крыша едет от всего этого. вроде бы все просто, а реализовать никак не получается.
Это не проблема...а состояние дел. Где проблема то?

Нужна картинка в таге <img /> используйте IMAGE, нужна ссылка на картинку - используйте IMG_RESOURCE и подставляйте в свой <a href="javascript..."> правельные пути. Нужно увеличеную и маленькую версию - тоже не проблема, вызовите два раза!
__________________
Павел Антонов
Rich Media Development Ltd.
Блог: http://codeline.richmd.ru/
Pavel Antonov вне форума   Ответить с цитированием
Старый 09.07.2006, 17:26   #6
*****
Новенький
 
Аватар для *****
 
Регистрация: 15.06.2006
Сообщений: 20
Отправить сообщение для ***** с помощью ICQ
По умолчанию

Да. нужна ссылка на картинку. то есть ее оригинал в uploads. подскажите, как с помощью IMG_RESOURCE в функцию передать путь к картинке.
на данный момент в setup написано
10 = IMAGE
10{
file{
import = uploads/pics/
import.current = 1
width.field = imagewidth
height.field = imageheight
maxW = {$styles.content.imgtext.maxW}
maxW.override.data = register:maxImageWidth
}
linkWrap = <a href="javascript:image_viewer()"> | </a>
wrap = | <br>
}

но пока это не работает, так как в функцию ничего не передается.
***** вне форума   Ответить с цитированием
Старый 10.07.2006, 20:54   #7
*****
Новенький
 
Аватар для *****
 
Регистрация: 15.06.2006
Сообщений: 20
Отправить сообщение для ***** с помощью ICQ
По умолчанию

ну поделитесь опытом хоть кто-нибудь.
***** вне форума   Ответить с цитированием
Старый 11.07.2006, 00:19   #8
Pavel Antonov
Senior Member
 
Аватар для Pavel Antonov
 
Регистрация: 01.10.2004
Адрес: Россия, Москва
Сообщений: 1,204
Отправить сообщение для Pavel Antonov с помощью ICQ
По умолчанию

Например так:

Код:
lib.img_with_popup = COA
lib.img_with_popup {
  10 = IMG_RESOURCE
  10 {
     file {
       import = uploads/pics/
       import.current = 1
     }
     stdWrap.wrap = <a href="javascript:image_viewer(|)">
  }

  20 = IMAGE
  20{
    file{
      import = uploads/pics/
      import.current = 1
      width.field = imagewidth
      height.field = imageheight
      maxW = {$styles.content.imgtext.maxW}
      maxW.override.data = register:maxImageWidth  
    }                      
  }
  
  wrap = |</a><br>
}
__________________
Павел Антонов
Rich Media Development Ltd.
Блог: http://codeline.richmd.ru/
Pavel Antonov вне форума   Ответить с цитированием
Старый 11.07.2006, 17:24   #9
*****
Новенький
 
Аватар для *****
 
Регистрация: 15.06.2006
Сообщений: 20
Отправить сообщение для ***** с помощью ICQ
По умолчанию

большое вам спасибо. все заработало.
а разделить ссылку - это вы хорошо придумали
спасибо еще раз.
***** вне форума   Ответить с цитированием
Старый 12.07.2006, 12:27   #10
Pavel Antonov
Senior Member
 
Аватар для Pavel Antonov
 
Регистрация: 01.10.2004
Адрес: Россия, Москва
Сообщений: 1,204
Отправить сообщение для Pavel Antonov с помощью ICQ
По умолчанию

"крылья, ноги.... главное мозг!"
__________________
Павел Антонов
Rich Media Development Ltd.
Блог: http://codeline.richmd.ru/
Pavel Antonov вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 00:58.


Работает на vBulletin® версия 3.8.1.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot

Хостинг и техническая поддержка: TYPO3 Лаборатория