javascript - 像 $(.someClass) 这样的 JQuery 类选择器是否区分大小写?

标签 javascript jquery html standards quirks-mode

给定这个 HTML:

<div class="OpenIDSelector">some text</div>

为什么这个 JQuery 选择器在某些浏览器和某些页面上匹配它,而在其他浏览器和页面上却不匹配?

$('.OpenIdSelector')

注意:我遇到了这个问题并自己解决了,但它很烦人而且我还没有在 StackOverflow 上找到它,所以我将它作为一个问答对发布,这样其他人就不会浪费了像我一样一个小时。

最佳答案

结果是 JQuery 的 class selector使用新的 javascript 方法 getElementsByClassName如果浏览器支持的话。此方法在 quirks 模式页面上不区分大小写,在非 quirks 模式(又名符合标准)页面上区分大小写。当然,大小写不同通常很明显,但是当文本卡在长而复杂的选择器中间时,就很难看清了。显然,标准和怪癖之间有很多区分大小写的差异需要注意。

故事的寓意:匹配 HTML 中一切的大小写(元素名称、CSS 类等),因为您永远不知道何时对浏览器或标准或库的更改可能会使您的假设无效关于不区分大小写。

关于javascript - 像 $(.someClass) 这样的 JQuery 类选择器是否区分大小写?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2580029/

相关文章:

jQuery 多个选择器顺序为 "this"

javascript - 无法在ajax返回的代码中调用jquery函数

html - 在 Django 的 css 文件中加载静态文件

javascript - 在javascript中在 Canvas 中生成随机图像

javascript - Bootstrap 轮播图像超出框架

javascript - 使用 globbing 在 Grunt 中加载 HTML <head> 中的多个文件

javascript - 如何循环遍历 foreach() 内的元素

javascript - 我怎么能从 JSON 中获取我的标题,但无法获取我的练习词

javascript - 过滤嵌套的对象数组

javascript - 设置多个选择菜单选项的样式