нажмите, чтобы показать изображение во всплывающем окне - PullRequest
0 голосов
/ 21 июня 2011

Я сделал простую галерею, используя этот скрипт для показа изображений:

 $rs = mysql_query('SELECT * FROM images WHERE oferta_id=2');


 while($row = mysql_fetch_array($rs))
  {
        echo '<li onclick="Large()"><img src='.$row['location'].' alt="image"/></li>';

  }

, и я хочу использовать javascript таким образом, чтобы при нажатии пользователем на определенное изображение всплывающее окно ион видит картинку побольше. Я думаю, что я правильно использую onclick в теге <li>, но почти не знаю, как сделать функцию Large(). Любая помощь по теме?

Спасибо

Лерон

Ответы [ 3 ]

1 голос
/ 21 июня 2011

Вы можете присвоить каждому imageинкрементный числовой идентификатор и передать его в функцию Large, т.е.

onclick="Large(0)" 

, и каждое изображение будет

<img id="image_0" .... />

, чтобыВы можете получить уникальную ссылку на это конкретное изображение в большой функции.

т.е.

function Large(index){
  var image = document.getElementById('image_' + index);
  //your code here
};

или, как уже было предложено, вы можете использовать лайтбокс.

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

<img onclick="Large(this) .... />

просто пища для размышлений

0 голосов
/ 21 июня 2011

Я бы посоветовал проверить сотни вариантов лайтбокса для вашего большего изображения.Просто гугл лайтбокс.

0 голосов
/ 21 июня 2011

Я бы просто использовал плагин jquery или плагин другого фреймворка javascript.выполните поиск в Google по запросу "лайтбокс jquery" и посмотрите примеры.

определенно нет смысла писать свои собственные, если вам не нужны какие-то особые функциональные возможности, недоступные или вы хотите создать свой собственный в качестве учебного упражнения.1003 *

...