我的网站上有很多链接,所有链接都是“投资组合点击”。我现在想要为它们添加一个“索引号”,所以它看起来像:
<a class="portfolio-click" index_number="1">...</a>
<a class="portfolio-click" index_number="2">...</a>
有没有一种简单的方法可以让jQuery这样做,所以我可以在不干扰索引顺序的情况下移动链接?
我试过了:
$( ".portfolio-click" ).attr( "index_number", function() {
for (var i = 0; i < max_portfolio_number; i++) {
return i;
}
});
但这没效果。
答案 0 :(得分:1)
不确定为什么需要它,但使用有效的数据属性可以这样做:
$( ".portfolio-click" ).attr( "data-index", function(i) {
return i;
});
您始终可以使用jQuery方法按索引访问元素,如
$( ".portfolio-click" ).eq(4); // gets the fifth (zero based)
所以你不需要那个属性吗?
答案 1 :(得分:1)
您可以使用.each()
$(".portfolio-click" ).each(function(i) {
$(this).attr("index-number",i);
});
答案 2 :(得分:0)
使用.attr( attributeName, value )
$( ".portfolio-click" ).attr( "index_number", function(i) {
return ++i; //index starts from so add 1 to it before return
});
<小时/> 更好地使用.data作为自定义属性
$(".portfolio-click").attr("data-index_number", function (i) {
return ++i;
});
答案 3 :(得分:0)
您可以使用jQuery的.each()
函数:
$('a.portfolio-click').each(function(i) {
$(this).attr("index-number",i);
});
答案 4 :(得分:0)
var i = 0;
$(".portfolio-click").each(function(){
$(this).attr('index_number', i++);
});