|
|
|
| Задался целью объединить Вашу фотогалерею с jQuery FancyBox http://www.linkexchanger.su/2008/66.html появилась проблема первая миниатюра с фото открывается с эффектом, а вот последующие без него не могу понять в чём косяк.
Вот часть кода файла photos.php
///////////////////////////////////////////////////
// Блок "Фотогалерея"
// 2004 (C) IT-студия SoftTime (http://www.softtime.ru)
// Симдянов И.В. (simdyanov@softtime.ru)
// Голышев С.В. (softtime@softtime.ru)
///////////////////////////////////////////////////
// Выбираем из базы данных фотографии
if(!preg_match("|^[\d]+$|",$id_parent) && !empty($id_parent)) exit();
$query = "SELECT * FROM photo
WHERE id_catalog = $id_parent AND
hide = 'show'
ORDER BY pos";
$prt = mysql_query($query);
if(!$prt)
{
echo "error : ".mysql_error()."<br>";
echo $query;
puterror("Ошибка при обращении к блоку Фотогалерея");
}
// Если в текущей группе фотографии имеется хотя бы одна
// фотография - формируем таблицу с фотографиями
if(mysql_num_rows($prt) > 0)
{
// Вспомогательная переменная для вывода
// фотографий по 5 штуки в строке
$td == 0;
// Выводим заголовок таблицы
while($par = mysql_fetch_array($prt))
{
// Формируем переменную $image, несущую ответственность за вывод
// уменьшенного изображения, являющегося ссылкой на увеличенное
if(!empty($par['small']) &&
$par['small']!="-" &&
file_exists($par['small']))
{
$size = getimagesize($par['big']);
$image = "<a rel=fancy-tour href=".$par['big']."><img src=".$par['small']." border=0 vspace=0></a>";
}
else $small = "Нет";
// Если значение временной переменной равно 0
// выводим тэг начала строки таблицы <tr>
if ($td == 0) echo "<tr>";
// Выводим фотографию
echo "<td id=gallery1><table width=90% height=100% leftmargin=0 cellpadding=0 cellspacing=0 border=0 valign=top hspace=20 align=left><tr valign=top align=left>
<td ><p class=newsblockzag1>".$par['name']."</p></td></tr>
<tr valign=top align=left>
<td valign=top>$image</td>
</tr></table></td>";
// Увеличиваем значение временной переменной $td
$td++;
// Если временная переменная $td принимает значение
// равное 5, следовательно строка завершена, и необходимо
// вывести завершающий тэг </tr>, а значение самой
// переменной обнулить
if ($td == $numphoto)
{
echo "</tr>";
$td = 0;
}
}
}
|
в index.php следующая часть в конце
<script type="text/javascript">
$(document).ready(function(){
$("#gallery1 a").fancybox({
hideOnContentClick: true,
overlayShow: true,
overlayOpacity: 0.5,
zoomSpeedIn: 1500,
zoomSpeedOut:600
});
});
</script>
В чём может быть причина Почему первая миниатюра открывается с эффектом а вторая и следующая при нажатии на них без эффекта?
|
| |
|
|
|
|
|
|
|
для: haushka
(30.11.2008 в 21:09)
| | Не силён в Яве Скрипт...
но позвольте спросить это у вас что [ "#gallery1 a" ] ? | |
|
|
|
|
|
|
|
для: Valick
(30.11.2008 в 21:51)
| | Массив ссылок (чем чаще всего бывают контейнеры <a>) в элементе с id="gallery1" | |
|
|
|
|
|
|
|
для: bronenos
(01.12.2008 в 00:31)
| | Привет, давненько тя невидно было)
Насколько я помню класс может соответствовать нескольки элементам, а вот id только одному (это может обьяснить что только первая фотография обрабатывается функцией). | |
|
|
|
|
|
|
|
для: Valick
(01.12.2008 в 01:14)
| | Спасиб ребята что откликнулись респект всё правильно во тупик я=)
if ($td == 0) echo "<tr id=gallery1>";
// Выводим фотографию
echo "<td><table width=90% height=100% leftmargin=0 cellpadding=0 cellspacing=0 border=0 valign=top hspace=20 align=left><tr valign=top align=left>
<td ><p class=newsblockzag1>".$par['name']."</p></td></tr>
<tr valign=top align=left>
<td valign=top>$image</td>
</tr></table></td>";
|
| |
|
|
|