我想知道querySelectorand querySelectorAll与 getElementsByClassName和之间的区别到底是什么getElementById?
querySelector
querySelectorAll
getElementsByClassName
getElementById
通过此链接,我可以收集到有关内容,querySelector可以编写document.querySelector(".myclass")以获取具有class的元素myclass和document.querySelector("#myid")获取具有ID的元素myid。但我已经可以做到这一点getElementsByClassName和getElementById。应该首选哪一个?
document.querySelector(".myclass")
myclass
document.querySelector("#myid")
myid
我也在XPages中工作,其中的ID是用冒号动态生成的,如下所示view:_id1:inputText1。所以当我写的时候document.querySelector("#view:_id1:inputText1")它是行不通的。但是写document.getElementById("view:_id1:inputText1")作品。有什么想法吗?
view:_id1:inputText1
document.querySelector("#view:_id1:inputText1")
document.getElementById("view:_id1:inputText1")
我想知道querySelector和querySelectorAll与getElementsByClassName和getElementById之间到底有什么区别?
语法和浏览器支持。
querySelector 当您要使用更复杂的选择器时,此功能将更为有用。
例如,所有列表项均来自作为foo类成员的元素: .foo li
.foo li
document.querySelector(“#view:_id1:inputText1”)无效。但是编写document.getElementById(“ view:_id1:inputText1”)可以。有什么想法吗?
该:字符有选择内部特殊的意义。你必须逃避它。(选择器转义字符在JS字符串中也具有特殊含义,因此您也必须转义 该 字符)。
:
document.querySelector("#view\\:_id1\\:inputText1")