javascript – querySelectorAll是否支持id中的句点(.)字符?

前端之家收集整理的这篇文章主要介绍了javascript – querySelectorAll是否支持id中的句点(.)字符?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
querySelectorAll是否支持id中的句点(.)字符?

我的意思是如果我追加一个如下元素:

var div = document.createElement('div');
div.id='my.divid';
document.body.appendChild(div);

然后我使用querySelectorAll如下:

document.querySelectorAll('#my.divid');

然后我什么都没得到!

所以句点是id的合法字符,而querySelectorAll是Firefox提供的官方方法;我无法相信该方法不支持id中的句点(.).我犯了一些错误吗?

解决方法

querySelectorAll中的句点表示您正在指定css类.在你的情况下,querySelectorAll试图找出一个id为“my”并且css类为“divid”的DOM元素. querySelectorAll如何知道这次你想要id而不是class?你应该有适当的id属性,以免混淆方法.虽然允许一段时间,但最好的做法是在大多数时间避免它,这样你就不会混淆其他库,比如jquery等.

猜你在找的JavaScript相关文章