jquery サイクルと jcarousel を使用してギャラリーをセットアップしました。PHPでサムネイルを生成します
<ul id="pager">
<?php foreach ($thumbs as $thumb) : ?>
<li><a href="#"><?php echo $thumb ?> </a></li>
<?php endforeach; ?>
</ul>
次に、カルーセルを作成し、ページャーをサイクルに追加します
$('#pager').jcarousel({});
if ( $('#images').length > 0 ) {
$('#images').before('<ul id="nav">').cycle({
fx: 'turnDown',
speed: 500,
timeout: 5000,
pagerEvent: 'mouseover',
pager: '#pager',
pagerAnchorBuilder: function(idx, slide) {
return '#pager li:eq(' + idx + ') a';
} ,
after: function(dir, id, el) {
var w= $('.jcarousel-clip-horizontal').width();
var i = $('.jcarousel-item-horizontal').width();
var slide = $('#pager .activeSlide');
if ( slide.position.left > w-i ) {
$('div.jcarousel-next').trigger('click');
}
}
});
$('#pager a').mouseenter(function() {
$('#images').cycle('toggle');
}).mouseleave(function(){
$('#images').cycle('toggle');
});
ページャーに 7 つの要素が表示されているので、表示されていない次のアイテムのスクロール イベントをトリガーしたいと考えています。
jquery index() 関数を使用して activeSlider のカウンターを追加しようとしましたが、カーソルでページャー項目にカーソルを合わせると、乱雑になりました。
これに関するアドバイス。