获取 jquery.jcarousel 中的可见元素
我正在构建一个 JavaScript 轮播,我需要提取轮播每次更改时显示的链接的 URL。
我使用 jQuery jCarousel,因为它允许开发人员绑定不同的处理程序来更改事件。
轮播应一次显示 4 个项目,并一次滚动 4 个项目。
我实现的 itemFirstInCallback 处理程序获取页面中第一个链接的 href(例如索引 1、索引 5)
我需要获取所有 4 个可见元素中显示的第一个链接的当前显示的 URL
下面的演示代码...
设置轮播
$(文档).ready(function () {
$('#featured_carousel_list').jcarousel({
可见:4,
滚动:4,
initCallback:mycarousel_initCallback,
按钮NextHTML:空,
按钮上一页HTML:空,
itemFirstInCallback:函数(轮播,liElement,intemIndex,操作){
// 获取可见项的 URL
var item_URL = $(liElement).children('a:last-child').attr('href');
警报(item_URL);
}
});
});
函数 mycarousel_initCallback(carousel) {
$('#next_button').bind('click', function () { carousel.next(); return false;});
$('#prev_button').bind('click', function () { carousel.prev(); return false;});
}
HTML 列表
;
I'm building a JavaScript carousel and I need to extract the URL's of the links shown on every change of the carousel.
I'm using jQuery jCarousel as it allows the developer to bind different handlers to change events.
The carousel should display 4 items at a time and scroll 4 items at a time.
The itemFirstInCallback handler I've implemented gets the href of the first link in a page (e.g. index 1, index 5)
I need to get the currently displayed URL's for the first link displayed in all 4 visible
demo code below...
Setup Carousel
$(document).ready(function () {
$('#featured_carousel_list').jcarousel({
visible: 4,
scroll: 4,
initCallback: mycarousel_initCallback,
buttonNextHTML: null,
buttonPrevHTML: null,
itemFirstInCallback: function (carousel, liElement, intemIndex, action) {
// get URL's of visible items
var item_URL = $(liElement).children('a:last-child').attr('href');
alert(item_URL);
}
});
});
function mycarousel_initCallback(carousel) {
$('#next_button').bind('click', function () { carousel.next(); return false;});
$('#prev_button').bind('click', function () { carousel.prev(); return false;});
}
HTML List
<div id="prev_button"><<</div>
<div id="next_button">>></div>
<ul class="featured_carousel_list" id="featured_carousel_list">
<li><img src="images/item_sample_image.gif" alt="" width="180" height="90" /><a href="display.aspx?tid=1" class="item_text_link">title</a></li>
<li><img src="images/item_sample_image.gif" alt="" width="180" height="90" /><a href="display.aspx?tid=2" class="item_text_link">title</a></li>
<li><img src="images/item_sample_image.gif" alt="" width="180" height="90" /><a href="display.aspx?tid=3" class="item_text_link">title</a></li>
<li><img src="images/item_sample_image.gif" alt="" width="180" height="90" /><a href="display.aspx?tid=4" class="item_text_link">title</a></li>
<li><img src="images/item_sample_image.gif" alt="" width="180" height="90" /><a href="display.aspx?tid=5" class="item_text_link">title</a></li>
<li><img src="images/item_sample_image.gif" alt="" width="180" height="90" /><a href="display.aspx?tid=6" class="item_text_link">title</a></li>
<li><img src="images/item_sample_image.gif" alt="" width="180" height="90" /><a href="display.aspx?tid=7" class="item_text_link">title</a></li>
<li><img src="images/item_sample_image.gif" alt="" width="180" height="90" /><a href="display.aspx?tid=8" class="item_text_link">title</a></li>
</ul>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果我正确理解你的问题,那么你想要获取所有可见元素的 URL。您可以通过将
itemFirstInCallback
回调替换为itemVisibleInCallback
来实现此目的:当所有 4 个项目变为可见时,都会触发此回调。
If I understand your question correctly then you want to get the URLs of all the visible elements. You can achieve this by replacing your
itemFirstInCallback
callback with aitemVisibleInCallback
:This callback will be triggered for all 4 items as they turn visible.