Jump to content
  • 0

Фотогалерея


lapwing
 Share

Question

Здравствуйте! Наткнулся на фотогалерею http://dev.herr-schuessler.de/jquery/popeye/demo.html, понравилась тем, что на одной странице и листаешь фото и увеличиваешь по клику.(пример №2). Попробовал прикрутить себе. Из БД выводятся записи и хотел чтобы к каждой записи выводилось также и фото, т.е. скрипт должен работать в цикле. Скрипт работает, но выводятся только фотки к последней записи. При помощи Searcher и rus (спасибо им) понял что не работает из-за id ppy2. Т.е. насколько я понял этот идентификатор используется для обращения к нему из скрипта, а при попытке загнать выполнение скрипта в цикл, возникает проблема того, что идентификатор встречается несколько раз на странице, т.е. не уникален, чего быть не должно. Возможно ли переделать скрипт или он вообще не предназначен для многократного использования? Вот кусок кода

<body>

<?php
include_once("../../connection.php");

$result = mysql_query('SELECT heading,message,tel,name,path1big,path1small,path2big,path2small
FROM information WHERE operid = "s_kv" ORDER BY informid DESC
LIMIT '.$start_pos.','.$perpage)
or die('error Что то не выбирает');
while($row = mysql_fetch_array($result))
{
printf("

<div class='example'>
<h3>".$row['heading']."</h3>
<div class='ppy' id='ppy2'>
<ul class='ppy-imglist'>
<li><a href='".$row['path1big']."'><img src='".$row['path1small']."' alt='' /></a></li>
<li><a href='".$row['path2big']."'><img src='".$row['path2small']."' alt='' /></a></li>

</ul>
<div class='ppy-outer'>
<div class='ppy-stage'>
<div class='ppy-counter'>
<strong class='ppy-current'></strong> / <strong class='ppy-total'></strong>
</div>
</div>
<div class='ppy-nav'>
<div class='nav-wrap'>
<a class='ppy-next' title='Следующая'>Следующая</a>
<a class='ppy-prev' title='Предыдущая'>Предыдущая</a>
<a class='ppy-switch-enlarge' title='Увеличить'>Увеличить</a>
<a class='ppy-switch-compact' title='Закрыть'>Закрыть</a>
</div>
</div>
</div>
</div>
<p>".$row['message']."<br /> </p>
<p>".$row['name']." Тел.".$row['tel']."<br /> </p>

</div>
<br />");
}
?>

<!-- [example js] begin -->
<script type="text/javascript">
<!--//<![CDATA[

$(document).ready(function () {
var options2 = {
caption: false,
navigation: 'permanent',
direction: 'left'
}
var options3 = {
caption: 'permanent',
opacity: 1
}

$('#ppy1').popeye();
$('#ppy2').popeye(options2);
$('#ppy3').popeye(options3);
});

//]]>-->
</script>
<!-- [example js] end -->
</body>

Link to comment
Share on other sites

6 answers to this question

Recommended Posts

  • 0

этого туда тому в это затем то...

Если надо применить один скрипт на множество сущностей выносим id в параметры функции:

function zzz (id)
{
var elem = document.getElementById(id);
elem.innerHTML = "К данному элементу применена функция zzz";
}

вызывается такая функция примерно так:

<div id="KOPOCTA" onClick="zzz('KOPOCTA')"></div>

PS На орфографию синтаксис не проверял

Edited by CEBEP
Link to comment
Share on other sites

  • 0

Взял вот так сделал:

$b = 1;
while($row = mysql_fetch_array($result))
{
$a = 'ppy';
$ppy = $a."".$b;
echo "
<div class='example'>
<h3>".$row['heading']."</h3>
<div class='ppy' id='$ppy'>
........
</div>
</div>;"
$b = $b+1;
}

и в нижнем скрипте

		......
$('#ppy1').popeye(options2);
$('#ppy2').popeye(options2);
$('#ppy3').popeye(options2);
........

Не знаю насколько допустимо id приcваивать не значение, а переменную, но желаемого результата достиг.

Спасибо СЕВЕР, надо мне изучать JS. Кстати rus натолкнул меня на мысль сделать цикл со счетчиком, тоже спасибо.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy