gpt4 book ai didi

javascript - 使用对象原型(prototype)中的文档方法?

转载 作者:行者123 更新时间:2023-11-28 19:09:41 26 4
gpt4 key购买 nike

我对 javascript 还很陌生,我正在尝试设置一个名为“number”的原型(prototype),其中包含一个名为“button”的键,该键可以使用您传递的任何 ID 来获取 HTML 元素。 HTML 中已存在 ID 为“one”的元素。

我想知道为什么这不起作用?

function number(num, idOfNum) {
this.val = num;
this.button = document.getElementById(idOfNum);
};

var one = new number(1, "one");

console.log(one.button); // null?

最佳答案

如果one.buttonnull ,那只是因为document.getElementById("one");当您运行 number() 的构造函数时,没有找到 DOM 对象对象,因此返回 null .

这可能是因为页面中没有具有该 id 的对象,也可能是因为您在页面完成加载之前运行此代码,因此当您运行代码时该对象尚不存在。

您必须显示更多的整体页面上下文(其中执行与页面 DOM 解析相关的代码),以便我们准确地了解此处发生的情况。

对于过早运行代码的情况,常见的修复方法是移动 <script>此代码所在的标记位于 </body> 之前标签。这将确保此代码运行时所有 DOM 元素都存在。有关此问题的更完整说明,请参阅此答案:pure JavaScript equivalent to jQuery's $.ready() how to call a function when the page/dom is ready for it .

关于javascript - 使用对象原型(prototype)中的文档方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30948843/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com