微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jQuery Cycle pagerAnchorBuilder

我正在使用Cycle插件用于新闻旋转器.这意味着我使用Div来填充幻灯片而不是图像.

我的最终目标是制作一个寻呼机而不是通常的1,2,3,4等 – 而是返回幻灯片中的第一个H3标签.

我知道这可能是一个小问题,但到目前为止我正在使用的是:

$('#scroll_wrap').cycle({
        fx: 'fade',pager: '#pager',pagerAnchorBuilder: function(idx,slide) { 
                return '<li><a href="#">' + slide.children("h3").textContent + '</a></li>';
        }

我也试过这样的事情:

$('#scroll_wrap').cycle({
    fx: 'fade',slide) { 
            var h3 = $('div',slide).children('h3');
            return '<li><a href="#">' + slide.h3 + '</a></li>';
    }

你可能会说,我仍然是一个初出茅庐的人. :/

任何人都可以帮我解决问题吗?

解决方法

将pagerAnchorBuilder函数中的一行更改为:
return '<li><a href="#">' + jQuery(slide).children("h3").eq(0).text() + '</a></li>';

需要改变三件事:

slide => jQuery的(滑动)
因为jQuery不会使用其辅助函数扩展元素,除非你告诉它.这是jQuery不能扩展本机原型(如Element)的一个不幸的副作用.这意味着你必须使用jQuery(x)在代码中包装每一件事.

儿童(“h3”)=>儿童( “H3”).EQ(0)
因为选择器返回匹配的对象数组,所以在执行选择器之后应该抓取第一个,否则链中的以下方法调用将作用于元素集. Jquery应该提供像.firstChild(“h3”)这样的东西.

textContent => .文本()textContent是一个mozilla的东西,并不适用于某些浏览器.在这里使用jQuery的.text()方法.在这种情况下,jQuery没有做错任何事.

原文地址:https://www.jb51.cc/jquery/179048.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐