jQuery 1.3.x 升级注意事项:选择器语法变更与 XML 查找修正
本文详解 jQuery 从 1.2.x 升级至 1.3.x 的关键变更。重点说明选择器中必须移除属性前的 @ 符号,否则会导致错误。同时指出在 XML 文档中直接链式查找节点可能失效,需改用 .find() 方法确保正确获取元素。
jQuery 1.3 选择器语法变更
获取 input 标签中 name 属性值为 go 的元素。
代码示例如下:
$("input[@name=go]").val(); // 此写法在 jQuery 1.2.x 版本中有效
$("input[name=tag]").val(); // 升级至 1.3.x 后,必须移除 @ 符号,否则将引发错误所有原选择器中包含 @ 符号的部分均需移除,例如 [@selected] 或 [@checked] 等。
属性选择器详解
补充说明
[attribute]:表示存在指定属性。
[attribute=value]:表示属性值等于 value。
[attribute!=value]:表示属性值不等于 value。
[attribute^=value]:表示属性值以 value 开头。
[attribute$=value]:表示属性值以 value 结尾。
[attribute*=value]:表示属性值包含 value。
注意:[attribute=value] 与 [attribute*=value] 看似相似,但存在本质区别。
前者要求完全匹配,后者仅要求包含。有观点认为后者用于获取多个元素,这种理解并不准确。
选择器匹配注意事项
补充说明:
使用 [name='test'] 选择器时,若所有元素均为 span 标签,则能正常获取结果。
但若混合存在 <a name=test> 或 input 元素,则可能仅匹配到其中一个,导致结果不完整。
XML 节点查找修正
此外
直接使用 $("XmlParentNode XmlChildNode[name='xx']").xx 这种方式进行查找,可能会定位错误。
应改为 $("XmlParentNode").find("XmlChildNode[name='xx']").xx,这样才能正确获取目标元素。
参考资料:
3 Quick Steps for a Painless Upgrade to jQuery 1.3
定制 Quill.js 主题样式:修改默认 CSS 与添加自定义类名
2026-11-04 11:21:35
混淆JS代码怎么在线反混淆并格式化阅读
2026-11-03 21:46:39
JS在线编辑器代码报错怎么调试?控制台使用技巧
2026-11-03 21:24:56
从 marked.js 旧版本升级到最新版:API 变更与迁移指南
2026-11-03 17:38:17
JS富文本编辑器Quill与代码编辑器CodeMirror的区别及应用场景
2026-11-03 16:52:09
