使用Javascript/jQuery在表中Shuffle <td>'s
Shuffle <td>'s in a table with Javascript/jQuery
我真的很纠结,所以也许你们中有人有一些漂亮的提示?
我想做什么我想创建一个包含两列("name"answers"rating")的表。我有5行。
- 这些行中的2行应该具有6-10之间的随机"评级"
- 其他2行应该有1-5之间的随机"评级"
- 1行(最后一行)应该具有7-10之间的随机评级。
到目前为止没有问题:这是我的jsFiddle: http://jsfiddle.net/HT89v/2/
但是:我想对前4行的"评分"进行洗牌,这样前两行的"评分"就不会总是很高,而第三和第四行的"评分"也不会总是很低。我想随机洗牌
第5行不应受到影响。
我试图在jsfiddle中实现。shuffle插件,但我不知道我做错了什么。
function noNorm(){
document.getElementById("rating4").innerHTML = [Math.floor(Math.random()*5) + 6];
for (var i = 0; i <= 1; i++){
document.getElementById("rating"+i).innerHTML = [Math.floor(Math.random()*5) + 6];
};
for (var i = 2; i <= 3; i++){
document.getElementById("rating"+i).innerHTML = [Math.floor(Math.random()*5) + 1];
};
};
noNorm();
jQuery(function($){
$('#rating0', '#rating1', '#rating2', '#rating3').shuffle();
});
(function($){
$.fn.shuffle = function() {
return this.each(function(){
var items = $(this).children().clone(true);
return (items.length) ? $(this).html($.shuffle(items)) : this;
});
}
$.shuffle = function(arr) {
for(var j, x, i = arr.length; i; j = parseInt(Math.random() * i), x = arr[--i], arr[i] = arr[j], arr[j] = x);
return arr;
}
})(jQuery);
非常非常感谢!
有许多解决方案可以使用javascript对数组进行洗牌。如果我正确地理解了您的问题,那么应该可以这样做:http://jsfiddle.net/HT89v/6/
在给ratings[4]
赋值之前,我对整个ratings[]
数组进行洗牌,以使第5行不受影响。
相关文章:
- 正在获取生成的PHP td值
- 如何在td元素中添加监听器
- 如何首先设置样式<td>表中包含在窗体中的元素
- 使用javascript获取表的td值
- tu如何将id放在填充了json数据的html表td上
- 改变所有<td>为特定的桌子点击颜色
- JQuery展开和隐藏表td
- jQuery如何获取td单元格值
- 如何调用表td标记内的Onload函数
- 使用谷歌地图api计算距离并将其设置在表格中<td>
- 查找所有TD标签并读取其数据属性
- 在同一tr-jQuery中获取td的值
- jQuery将td onclick值传递到其他表
- 计算HTML表TD中两个数字之间的百分比
- 使用querySelector()获取最后一个td元素
- <td> focusin event .addclass
- 如何通过js更改td的属性
- 选择所有td's基于所选内容覆盖多行
- JQuery选择器:如果同级具有.class,则选择td
- jQuery将TD注入适当的列(俄罗斯方块风格)