获取 jquery.jcarousel 中的可见元素

发布于 2024-11-06 17:44:35 字数 2418 浏览 1 评论 0原文

我正在构建一个 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 () { car​​ousel.next(); return false;});
                $('#prev_button').bind('click', function () { car​​ousel.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

  • elements and im wondering how to achieve this?

    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 技术交流群。

    扫码二维码加入Web技术交流群

    发布评论

    需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

    评论(1

    秋意浓 2024-11-13 17:44:35

    如果我正确理解你的问题,那么你想要获取所有可见元素的 URL。您可以通过将 itemFirstInCallback 回调替换为 itemVisibleInCallback 来实现此目的:

    itemVisibleInCallback: function(carousel, liElement) {
      var item_URL = $(liElement).children('a:last-child').attr('href');
      console.log(item_URL);
    }
    

    当所有 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 a itemVisibleInCallback:

    itemVisibleInCallback: function(carousel, liElement) {
      var item_URL = $(liElement).children('a:last-child').attr('href');
      console.log(item_URL);
    }
    

    This callback will be triggered for all 4 items as they turn visible.

    ~没有更多了~
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文