Javascript XPath, Attriubte

看了庄表伟的AjaxFastLane, 加上Dlee的一些指点。
大致对Javascript 操作 XPath 有了 了解。

IE里面的XPath操作类似于 DOM4J (Jaxen)。
selectNodes, selectNode, 等。根据method name区分目标结果类型。

Mozilla, Firefox的XPath操作类似于JDK的XPath。
evaluate( ... returnType ...) 根据returnType 参数区分目标结果类型。

有些XPath Wrapper (比如 AjaxFastLane 里面Dlee 提到的, code里面包含的xpath.js ),把Mozilla的XPath操作包装为 IE XPath way.

这个资料里面也有类似的做法。
http://www.chinahtml.com/webdesign/3/2006/javascript-11401633863582.shtml

关于Mozilla的XPath用法。这里是我查到的资料。
http://developer.mozilla.org/en/docs/Introduction_to_using_XPath_in_JavaScript
http://kb.mozillazine.org/XPath

这里是JavaScript DOM API。
http://krook.org/jsdom/

对比了各方面的Code Sample。
得出的结论,如同人们常说的,魔鬼都在细节中。

最麻烦的细节,就是Attribute了。Attribute是一种很特殊的Node。
DOM里面定义为NamedNodeMap。JDK里面基本是操作NamedNodeMap。
一些语言的实现,支持了Element Node对Attribute的操作。

语言和语言之间,browser和browser之间,对这个Attriubte的操作支持 (document.createAttribute() , add, set, remove),似乎都有细节区别。目前还没有理出头绪。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值