gpt4 book ai didi

Javascript - 功能 VS 无功能......这是如何工作的?

转载 作者:行者123 更新时间:2023-11-30 06:58:07 26 4
gpt4 key购买 nike

如果我将以下脚本放在脚本正在搜索的元素上方,我会收到一个错误:

<script type="text/javascript">
document.getElementById('my_iframe').src = "my_file.php";
</script>

当然,为了让它再次工作,我需要将它放在元素的下方

然而,如果我将相同的东西变成一个函数并将它放在脚本正在搜索的元素上方,它会完美地工作:

function loadnew(){
document.getElementById('my_iframe').src = "my_file.php";
}

问题是,如果我使用一个函数,为什么它会起作用?我一直认为,为了让脚本找到它需要放置在它正在搜索的元素下方的东西?

谢谢!

最佳答案

它放在哪里并不重要,唯一重要的是它何时被执行。

如果它在有 id 为 my_iframe 的元素之前执行,它将失败,如果有,它将成功。

因此,如果您只是执行一个内联脚本标签,然后将您的一个衬里放在那里,它将立即执行,如果脚本标签恰好位于 ID 为 my_iframe 的标签之前,则不会找到任何内容- getElementById 返回 null,它不是普通对象,因此不能具有属性 src,因此您的代码失败。

如果您定义一个函数并在具有 id my_iframe 的元素存在后执行它,它将返回一个元素对象并且您的代码运行正常(诅咒假设该元素对象允许 src 要设置的属性)。

关于Javascript - 功能 VS 无功能......这是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4721466/

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