iFrame работает только для первого массива? - PullRequest
1 голос
/ 06 февраля 2011

Я использую FancyBox для хранения своих iframes, но он работает только для первого массива.Вот как выглядит массив:

$gallery_items = array(
array("img_src" => "gallery/thumb_1.jpg", "link" => "gallery/profile1.txt"),
array("img_src" => "gallery/thumb_2.jpg", "link" => "gallery/profile2.txt"),

и так далее, а затем вот как он создается:

echo '<li><a id="various3" href ="' . $current_gallery_item["link"] . '"><img src="' . $current_gallery_item["img_src"] . '" /></a></li>';

id="various3" - это то, как FancyBox сообщает свой iframe.Но это работает только для первого массива.

Ответы [ 3 ]

2 голосов
/ 06 февраля 2011

Исправленный ответ:

Кажется, вы не хотите iFrames, а просто загружаете контент через Ajax.Ваша проблема в том, что каждый элемент имеет одинаковый идентификатор.Если вы присоедините Fancybox через

 $('#various3').fancybox();

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

Вместо этого используйте классы:

<ul>
<?php foreach($gallery_items as $item): ?>
     <li>
         <a class="various3" href ="<?php echo $item['link']; ?>">
             <img src="<?php echo $item["img_src"]; ?>" />
         </a>
     </li>
<?php endforeach;?>
</ul>

И jQuery:

$('a.various3').fancybox();

Если вы действительно хотите иметь iFrames, вы можете просто добавить класс iframe к элементам ссылки:

<a class="various3 iframe" ...>

Это автоматически скажет Fancybox использовать iFrames.

См. Также Fancybox - Как использовать .

1 голос
/ 06 февраля 2011

Вы использовали один и тот же идентификатор (а именно, "Various3") для нескольких элементов. Это не будет работать таким образом. Каждый идентификатор должен быть уникальным.

назначить некоторый класс A-тегам и использовать его:

$("#various3")

--->

$(".various3")
1 голос
/ 06 февраля 2011
 foreach($gallery_items as $current_gallery_item){
    echo '<li><a id="various3" href ="' . $current_gallery_item["link"] . 
          '"><img src="' . $current_gallery_item["img_src"] . '" /></a></li>';
  }

Может работать

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...