更改数值为文本- jQuery / NivoSlider
Change Numeric Value to Text - jQuery / NivoSlider
我试图改变数字导航,在下面的例子中,为实际的文本链接。
所以'1'
可以是'Football'
, '2'
可以是'Ice Hockey'
,等等…
我如何使用NivoSlider代码实现这一点?
我已经将代码移动到JSFiddle: http://jsfiddle.net/JSNuU/,以防这样更有帮助。
遗憾的是,Nivo没有提供一个钩子来控制导航,而是用一系列图像代替它。这些数字是硬编码的:
nivoControl.append('<a class="nivo-control" rel="'+ i +'"><img src="'+ child.attr('rel') + '" alt="" /></a>');
如果你愿意,你可以在事后更改它们:jsFiddle
var navNames = ['one','two','three','four'];
jQuery('.nivo-control').each(function(i){
$(this).text( navNames[i] )
})
插件似乎不支持这个。但是,你可以使用jQuery循环在插件创建新标签后插入它们:
jQuery('.nivo-controlNav').each(function() { // in case there's more than one
var arrLinks = ['one','two','three','four'];
jQuery(this).children('a').each(function(i,el) {
jQuery(el).text(arrLinks[i]);
});
});
http://jsfiddle.net/mblase75/JSNuU/5/nivo不支持此功能,但快速查看未压缩的源代码后,可以轻松添加此功能。在检查拇指是否被切换后的第168行,有这样一行:
nivoControl.append('<a class="nivo-control" rel="'+ i +'">'+ (i + 1) +'</a>');
可以这样修改:
nivoControl.append('<a class="nivo-control" rel="'+ i +'">'+ kids.eq(i).attr("title") +'</a>');
或alt
或name
甚至数据属性:
nivoControl.append('<a class="nivo-control" rel="'+ i +'">'+ kids.eq(i).data("caption") +'</a>');
没有人愿意花那么多时间来修复你只使用一两次的东西。;)
如果你这样做,一定要在事后重新压缩它,以提高下载速度。
相关文章:
- 无法从 jQuery RSS Feed 中的 localStorage 动态替换类
- 如何使用jQuery自动打开页面上的所有链接
- 如何使用jquery在填充自动完成的值后使文本框只读
- jQuery:循环一个具有不同超时值的循环
- 用程序搜索JQuery数据表中的文本
- 使用 jQuery 的 .on 函数如何获取事件的原始元素
- jQuery匹配JSON对象的部分文本
- Jquery POST未填充数组
- JQuery使计数器每次更改时都会增加
- 如何在Angular2中使用jQuery插件
- 提高JQuery的性能
- 无法在通过jQuery的ajax加载的页面中执行javascript
- JQuery合并了keyup和focusout两个函数
- 如何使用jQuery选择下拉列表的值
- 将PHP变量传递给jQuery时遇到问题
- jQuery UI自动完成突然停止工作
- 剑道网格jQuery动画()问题
- 如何使jQuery插件函数可调用以供独立使用,而不在集合上操作
- jquery点击函数select&取消选择
- 更改数值为文本- jQuery / NivoSlider