卡在一个有趣的问题上。我需要将增量“ID”分配给
<ul class="clearfix products">
<li id="1" class="post-12345 " data-product-id="12345"> Product 1</li>
<li id="2" class="post-2222 " data-product-id="2222"> Product 2 </li>
<li id="3" class="post-3333" data-product-id="3333"> Product 3</li>
...etc
</ul>
现在 id 由 footer.php 处的 jQuery 代码分配:
<script>
jQuery(document).ready(function($) {
var i = 0;
$(".row ul li").each(function(){
i++;
$(this).attr("id", i));
});
});
</script>
一切都很好,但我们在页面上有一个 Ajax 无限滚动,所以在向下滚动后会出现新产品。这就是问题所在:产品的新部分已经刷新了 ID(从 1 到 24)。我尝试了很多不同的方法来解决这个问题,包括静态 php 变量、wordpress 计数器函数等。但观察到唯一适用于这种情况的是 CSS 计数器。这样的代码确实正确地对产品进行了编号(之前):
<style>
.products {
counter-reset: my-awesome-counter;
}
.products li:before {
counter-increment: my-awesome-counter;
content: counter(my-awesome-counter);
}
</style>
但它会在图片上方的前端列出产品: CSS-counter 列出的产品示例
但是我怎样才能把这些数字放到属性中呢?换句话说,有没有什么东西可以把 CSS 计数器值放到 jQuery 函数的每个值上?