修复IE9&safari 的sort方法

 更新时间:2011年10月21日 01:15:31   作者:   我要评论
解决方案其实就是冒泡排序的一个包装,本补丁不修复各浏览的排序算法不一致的问题
当前版本 v0.2
v0.1 修复IE9-- Array.prototype.sort 不能根据 对象属性 做排序的遗憾
v0.2 修复safari 不支持函数参数
复制代码 代码如下:


!function(window){
var ua = window.navigator.userAgent.toLowerCase(),
reg = /msie|applewebkit.+safari/;
if(reg.test(ua)){
var _sort = Array.prototype.sort;
Array.prototype.sort = function(fn){
if(!!fn && typeof fn === 'function'){
if(this.length < 2) return this;
var i = 0, j = i + 1, l = this.length, tmp, r = false, t = 0;
for(; i < l; i++){
for(j = i + 1; j < l; j++){
t = fn.call(this, this[i], this[j]);
r = (typeof t === 'number' ? t :
!!t ? 1 : 0) > 0
? true : false;
if(r){
tmp = this[i];
this[i] = this[j];
this[j] = tmp;
}
}
}
return this;
}else{
return _sort.call(this);
}
};
}
}(window);

相关文章

  • js格式化时间的简单实例

    js格式化时间的简单实例

    本文分享了js格式化时间的实例代码,需要的朋友可以看下
    2016-11-11
  • javascript 关于# 和 void的区别分析

    javascript 关于# 和 void的区别分析

    href 为#的跳到了自己的页面。原来‘#’代表的是 #top ,
    2009-10-10
  • JavaScript缓冲运动实现方法(2则示例)

    JavaScript缓冲运动实现方法(2则示例)

    这篇文章主要介绍了JavaScript缓冲运动实现方法,简单分析了JavaScript缓冲运动的实现原理与相关运算技巧,并给出了两则实例代码予以总结分析,需要的朋友可以参考下
    2016-01-01
  • 在layui中layer弹出层点击事件无效的解决方法

    在layui中layer弹出层点击事件无效的解决方法

    今天小编就为大家分享一篇在layui中layer弹出层点击事件无效的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-09-09
  • JavaScript返回0-1之间随机数的方法

    JavaScript返回0-1之间随机数的方法

    这篇文章主要介绍了JavaScript返回0-1之间随机数的方法,涉及javascript中Math对象random方法的使用技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • JavaScript this绑定过程深入详解

    JavaScript this绑定过程深入详解

    这篇文章主要介绍了JavaScript this绑定过程,结合实例形式深入分析了JavaScript中this关键字的功能、原理、绑定方式及相关操作注意事项,需要的朋友可以参考下
    2018-12-12
  • JavaScript 乱码问题

    JavaScript 乱码问题

    在用js写网页时,如果html等内容全部用document.write输出,包括<html>、<meta等标签,当嵌套时,会出现输出内容为乱码的问题
    2009-08-08
  • 基于JS实现移动端向左滑动出现删除按钮功能

    基于JS实现移动端向左滑动出现删除按钮功能

    最近在做移动端项目时,需要实现一个列表页面的每一项item向左滑动时出现相应的删除按钮,其实实现此功能很简单的。这篇文章主要介绍了基于js实现移动端向左滑动出现删除按钮,需要的朋友可以参考下
    2017-02-02
  • 详解js常用分割取字符串的方法

    详解js常用分割取字符串的方法

    这篇文章主要介绍了js常用分割取字符串的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • JavaScript代码里的判断小结

    JavaScript代码里的判断小结

    在JavaScript代码中,多多少少会有判断语句。业务越复杂,逻辑就越复杂,判断就越多。今天给大家整理下JavaScript中代码里常会用到的那些判断,有需要的可以参考借鉴。
    2016-08-08

最新评论