gpt4 book ai didi

javascript - JS - 从 FireFox 选择子节点时出现问题

转载 作者:行者123 更新时间:2023-12-02 19:11:00 25 4
gpt4 key购买 nike

我当前正在尝试选择元素的childNode。这就是我尝试这样做的方式:

var postBody_elem = elem.parentNode.parentNode.childNodes['post'].childNodes['postBody'];

我也尝试过:

elem.parentNode.parentNode.childNodes[0].childNodes[1];

我已经测试过,我知道这是 childNodes 的问题,而不是 parentNodes 的问题。

这是我正在做的事情的简化结构:

<section id = 'postWrapper'>                          //This is the Second Parent.
<article id = 'post'> //This should be the First Child.
<section id = 'postInfo'>
<section id = 'postTitle'></section>
<section id = 'poster'></section>
<section id = 'postDate'></section>
</section>
<section id = 'postBody'> //This should be the Second Child.
</section>
</article>
<section id = 'postBar'> //This is the First Parent.
<img id = 'portrait'>
<section id = 'editButton'>Edit</section> //This is the var elem.
<section id = 'deleteButton'>Delete</section>
</section>
</section>

我必须通过浏览父节点和子节点来引用'postBody'的原因是因为这种格式被迭代了很多次。

--这让我想到了我的问题,上面的代码行在 Google Chrome 中工作,但在 FireFox 中不起作用,我尝试了很多变体,但控制台给我错误,它是未定义的。我已经检查过该元素是否被正确声明,这只是我认为浏览器处理它的方式之间的差异。

如果有人有答案,我希望它是关于如何引用我所显示的元素,而不是关于我如何不正确地使用 id 多个元素的讲座,因为这在这种情况下不是问题(据我所知,因为它可以在 Chrome 中运行)。

谢谢。

最佳答案

第一种方法在 Firefox 中不起作用,因为它似乎是非标准的,第二种方法不起作用,因为您没有意识到 childNodes 也包含文本节点。要获取您想要的元素,请尝试

elem.parentNode.parentNode.childNodes['1'].childNodes['3']

http://jsfiddle.net/mowglisanu/UqZVn/

关于javascript - JS - 从 FireFox 选择子节点时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13716326/

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