不知大家对精华区的表格排序终极优化是否还有记忆,当时讨论的结果曾以为是最快的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 下测试通过,欢迎大家指正 :)
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器