jQuery排序在任何IE浏览器中都不起作用
我要把头发拔出来了,因为我花了很多时间在护理上-_- 嗯,我有一个无序的div列表,我正在尝试排序。 这在Chrome和Firefox中都能很好地工作,但在IE中不行 JS相当简单:jQuery排序在任何IE浏览器中都不起作用,jquery,internet-explorer,sorting,Jquery,Internet Explorer,Sorting,我要把头发拔出来了,因为我花了很多时间在护理上-_- 嗯,我有一个无序的div列表,我正在尝试排序。 这在Chrome和Firefox中都能很好地工作,但在IE中不行 JS相当简单: $('#VariantContainer > .ProductVariant').sort(function(a,b){ return a.id > b.id }).appendTo('#VariantContainer') 在IE中查看此小提琴: 有人知道为什么吗 谢谢:) 溴 马丁我想你漏掉了
$('#VariantContainer > .ProductVariant').sort(function(a,b){
return a.id > b.id
}).appendTo('#VariantContainer')
在IE中查看此小提琴:
有人知道为什么吗
谢谢:)
溴
马丁我想你漏掉了这行的分号:
return a.id > b.id
Firefox和chrome可以忽略这些小事情,但IE不能。
应该是
return a.id > b.id;
您正在声明一个函数,因此它遵循所有常规规则
jQuery(document).ready(function($){
//Order variants
$('#VariantContainer > .ProductVariant').sort(function(a,b){
return a.id - b.id;
}).appendTo('#VariantContainer');
});
Boolean不是正确的返回类型,也不能解释相等的值。使用数字而不是Boolean。对我来说,这是最好的变体(因为我们显然使用数字): 看看这一个可能的副本
parseInt(a.id) - parseInt(b.id)