网络编程
位置:首页>> 网络编程>> JavaScript>> JS表格排序新法

JS表格排序新法

作者:myhyli  发布时间:2010-07-09 06:40:13 

标签:

不知大家对精华区的表格排序终极优化是否还有记忆,当时讨论的结果曾以为是最快的JS排序了,实则不然,按前段时间我发的DHTML性能提升帖(转译)所讲到的,DOM效率某些情况下并不如DHTML,比如一次写入大量数据时,DOM频繁创建添加反而更慢,所以可以对排序算法作以下修改:

[单击全选,Ctrl+A复制,将代码保存成html文件运行]

注意测试时将记录条数增加到500条以上,推荐1000条
我测试结果是平均1322ms左右

但这样就是最快的吗?非也,且看以下xml+xslt+js例子,能把时间缩短到721ms左右
需要准备三个文件
1. xml文件 ---节省版面起见,这里只罗列两条记录
<?xml version="1.0" encoding="UTF-8" ?>
<root>
  <record>
    <info>AddCommonInfo.mxp</info>
    <info>MXP File</info>
    <info>2614</info>
<info>2002-12-30 16:45:22,Fri</info>
  </record>
  <record>
    <info>addtemplateparam.mxp</info>
    <info>MXP File</info>
    <info>3100</info>
    <info>2002-12-5 13:28:24,Sun</info>
  </record>
</root>

2. xsl 文件
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl" version="1.0">
<xsl:template match="root">
<table border="1" width="100%">
<xsl:for-each select="record">
<tr>
<xsl:for-each select="info">
<td>
<xsl:value-of select="text()" />
</td>
</xsl:for-each>
</tr>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>

注意命名空间,想要在IE5下兼容,必须使用这个名字

3.htm文件

[单击全选,Ctrl+A复制,将代码保存成html文件运行]

以上代码在 WIN2K,IE5 下测试通过,欢迎大家指正 :)

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com