概述
de.js是一个轻量级的javascript扩展函数库,通过扩展页面元素的方法和属性、和扩展javascript内置类型的方法来帮助web前端开发人员实现更便捷和高效的编程。以下是主要特点:
支持类似jquery的选择器,同时支持类似XPath的选择器。
支持基本的Ajax。
扩展了Date、Array、string类型的方法。
扩展了document对象的方法和属性等。
de.js项目和源代码已经于2019年11月26日起在Github上公开,地址https://github.com/qinhuayi/de.js。
版本历史
当前de最新版本为1.7.1。
版本更新时间文件下载变更
1.8
(未来)
分解为de.js和de-types.js两部分,前者包含浏览器的支持,后者则属于非浏览器支持的部分,比如类型的扩展。
增加属性值(区别于特性值)选择器'[:NameX=XXX]'。
增加de.prop()方法给属性赋值。
1.7.1
2019-12-03
CRC32: E79DD454
MD5: 1DD8EEC222AA85D81C6EE023D9A31478
SHA1: B587C517CB7E2CFF6DBDB8DB8121F42D3F95E9E0
解决1.7版中已发现的几处Bug。
$t(specifiers) 增强为$t(specifiers, doc),用于批量获取其它文档的标签。
增加Test.html用于测试和检验所有de的功能与函数。
1.7
2019-03-31
修复两处Date.fromString()的bug。
增加String.format(ptn, ...),可替代$.format(ptn, ...)。
增加de.parent(spec)。
增加Array.remove(i)和Array.forEach(fn)。
1.6
2016-11-19
增加 $t(specifies) 和 $tags(specifies)。等同于$e(document.documentElement).tags(specifies)。
1.5
2016-05-19
改良 $$.htmlEncode() 和 $$.htmlDecode(), 添加参数'mode'。
重命名 'document.thisUrl' 为 'document.path'。
移除 对象 $$.UrlParser,添加替代方法 $$.url2Object()。
修复一处位于$$.ajax(conf)的bug:重命名conf对象的内部方法名 conf.success 为 conf.onsuccess以避免名称混淆。
重命名 'Date.toJSON' 为 'Date.toObject'。
改良 'de.tags(selector)',支持新特性运算符“~=”、支持多层标签特征字符串、重命名参数为 'de.tags(specifies)'。
早于1.5的版本不在此处记录。
帮助改进de
发现Bug或者有任何建议和意见的请发邮件至qinhuayi@qq.com。
附:de的诞生与理念
de名字的含义取自Document Elements的首字母。de诞生的目的最初是为了摆脱对jquery与常见的jquery编程方式的依赖,使得喜欢常规编程方式、并且经常使用DHTML原生方法的开发人员多了一个轻量级的选择。为了使原先使用过jquery的开发人员顺利转移到de来,de兼容jquery并且效仿jquery的许多特性。例如de的许多方法名与jquery的方法名一样或相似等。
de的理念与jquery有很大区别,并不追求大而全,也不追求最大化浏览器兼容性,jquery源代码中少数几个方法和特性占用了大量的代码行,de中不会这样,而是保留最必要的部分,其余的留给开发人员使用DHTML原生方法自行解决。de采用查找标签名方式筛选和定位元素,与jquery使用正则表达式查找全文字符的方式有本质区别,性能速度上则不相上下。