gpt4 book ai didi

javascript - 定位由脚本呈现的 ID

转载 作者:行者123 更新时间:2023-11-29 18:23:48 25 4
gpt4 key购买 nike

我正在使用一个名为 Tabifier ( http://www.barelyfitz.com/projects/tabber/ ) 的漂亮小脚本

现在,长话短说,我在 head 标签中运行的这个脚本创建了一个 <ul><li>包含<a>秒。同样在 head 标签中,它为这些 <a> 创建了 ID秒。当我检查加载的网站时,我可以清楚地看到 ID 标签。但是,我无法使用 getElementById 调用它们。我一直在用

<script>
document.getElementById('rightpanelnav1').style.padding='200px';
</script>

作为我代码不同部分的示例脚本,但无济于事。我想知道是不是我的代码中定义这些东西的位置或顺序导致它无法识别 ID。你怎么看?

编辑:我在下面收到了一个很好的答案,但我仍然无法让“rightpanelnav1”注册 onclick 事件......?是的,应该没有问题吧?当我点击它时,整个页面已经加载了几秒钟......

最佳答案

首先,为了访问 DOM 中的元素,该元素必须是 DOM 的一部分 (document)。所以如果你把你的 <script>getElementById在加载元素之前的页面中,它不会在 DOM 中看到该元素。

其次,您使用的这个库很可能会在页面加载时进行修改,这意味着无论您将 <script> 放在哪里它在运行之前没有机会看到这些元素。

因此,您也应该让脚本等待,然后执行以下操作:

window.onload = function(){
document.getElementById('rightpanelnav1').style.padding='200px';
};

或者点击事件

window.onload = function(){
document.getElementById('rightpanelnav1').onclick = function(){
alert("clicked!");
};
};

关于javascript - 定位由脚本呈现的 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15646045/

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