【问题标题】:make document.getElementById into a var将 document.getElementById 变成一个 var
【发布时间】:2014-01-17 13:33:59
【问题描述】:

有什么方法可以让“document.getElementById”变成一个变量?

我希望能够写作

myVariable("id").innerHTML = (blabla);

而不是

document.getElementById("id").innerHTML = (blabla);

如果这个问题已经回答,请原谅我。我一直在寻找并找到零! 新手

【问题讨论】:

  • 尝试使用jquery,它相对容易
  • 你创建js函数通过ID返回对象
  • 感谢您的回答!但是,我不能使用 jquery,只能使用 javascript(学校作业)。我不确定如何创建函数...?

标签: getelementbyid var


【解决方案1】:

您可以将输出包装到另一个函数中

var shortID = function(id) {
    return document.getElementById(id);
}
shortID('myID').innerHTML = "...";

【讨论】:

  • 效果很好!它是如此简单,我不知道我真的知道答案。 非常感谢 migvill!
【解决方案2】:

要提供一种更简单的方式来调用通用代码,您可以像 migvill 建议的那样定义自己的函数。

要直接回答这个问题,您可以使用变量指向document.getElementById 函数(或任何其他函数)。这和你想象的一样明显:

var myVariable = document.getElementById;

这个问题是函数本身(myVariable 现在指向的对象)与它设计使用的document 对象没有内在联系。当您编写 document.getElementById("id") 时,document 会自动赋予该函数,但使用 myVariable 您需要指定它。这可以使用call 函数来完成:

myVariable.call(document, "id").innerHTML = "blabla";

最后,bind 函数可用于创建自动链接给定对象的 new 函数(这与定义自己的包装函数的效果基本相同):

var newFunc = myVariable.bind(document);

newFunc("id").innerHTML = "blabla";

【讨论】:

  • 非常感谢您增加了我有限的 Javascript 知识。像这样检查其他人的代码和论坛是我学习的方式。
猜你喜欢
  • 2012-09-30
  • 1970-01-01
  • 2021-12-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-02
相关资源
最近更新 更多