我想要 someElement.getElementById
的快捷方式。
但是我怎样才能不调用.getElementById()
,而是直接说.foo()
?
例如,我可能会说:
var element = document.foo("sampleID");
element.style.color = "red";
将 id #sampleID
的元素的 color
样式更改为红色。
或者:
var element = document.foo("someDiv").foo("myElement");
element.style.backgroundColor = "blue"
将文档的 ID 为 someDiv
的子文档的 ID 为 myElement
的子文档的背景颜色更改为蓝色。
以更清晰的方式,这将查找作为文档子级且具有 ID someDiv
的元素。然后它会查找具有 id myElement
的子元素。然后它会将其背景颜色更改为蓝色。
我试图在互联网上搜索这些类型的函数,但我不知道它们叫什么,所以我没有运气。
最佳答案
如果您想将 getElementById
别名为 foo
,那么无论如何,正如其他答案/评论所建议的那样,
document.foo = document.getElementById;
不过,这可能不是一个好主意。
但是您似乎想要在具有其他 ID 的元素中查找具有特定 ID 的元素。但 ID 是唯一的。因此,无需在具有某一特定ID的元素内搜索具有另一特定ID的元素。更基本的是,getElementById
仅在 document
上定义,而不是在任意元素上定义。
因此,实际上没有办法用getElementById
在另一个想法中搜索具有一个ID的元素;您需要使用 document.querySelector('#someDiv #myElement')
,但在所有合理的情况下,这与 document.querySelector('#myElement')
完全相同code>,与 document.getElementById('myElement')
完全相同。
关于javascript - 为 .getElementById 创建快捷方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33046396/