我想循环一个文本数组。我打算使用.each(),但我不知道是否有办法用它来做。是否有可能或者还有其他方式需要这样做吗?感谢
我不认为这是必要的,但这就是我用它测试它...
jQuery.each(data.reviews, function(index, itemData) {
var p = '"'+ itemData.review +'"';
$("#reviews p").text(p);
});
编辑:它是一个JSON对象数组。 (我认为这就是你说的 - 或者说 - 对象数组的JSON对象)
循环我希望它最终淡入和淡出每个“评论”并循环,所以如果有5个评论那么它将从5循环到0然后返回到5并继续无限。希望能让它更加清晰。
答案 0 :(得分:2)
for (var i = 0; i < data.reviews.length; i++) {
$('#reviews p').text('"' + data.reviews[i].review + '"');
}
不确定为什么要一遍又一遍地替换#reviews p
文本,但原生Javascript适用于迭代数组。
答案 1 :(得分:1)
我认为你应该这样做
data.reviews.each(function(index) {
//use $(this) to get the current review element
});
答案 2 :(得分:1)
不太确定你的意思是“循环一个文本数组”。假设data.reviews是一个JSON对象是否安全?如果是这样,你有什么应该工作,但你可能想使用:
$('#reviews').append($('<p>').text('"'+itemData.review+'"'));
这将取代.each
块中的当前代码。 (假设您为每个条目的#reviews添加了一个新段落。您当前的方法一直用最后找到的条目替换段落的内容。)
JSFiddle示例:http://jsfiddle.net/HcV3P/
JSFiddle v2 - 与旋转器:http://jsfiddle.net/HcV3P/2/