Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过JS获取倒数第二个HTML元素_Javascript_Html - Fatal编程技术网

Javascript 通过JS获取倒数第二个HTML元素

Javascript 通过JS获取倒数第二个HTML元素,javascript,html,Javascript,Html,例如,我有一次聊天 测试1 测试2 [10136]迪姆登: 测试3 我需要得到倒数第二个元素test2。 如何在没有jQuery的情况下获得它。您可以获得与任何CSS选择器匹配的元素列表。然后,可以取长度-2的元素: var list = document.querySelectorAll("#chat li"); var penultimate = list[list.length - 2]; 实例: var list=document.querySelectorAllchat li; v

例如,我有一次聊天

测试1 测试2 [10136]迪姆登: 测试3 我需要得到倒数第二个元素test2。
如何在没有jQuery的情况下获得它。

您可以获得与任何CSS选择器匹配的元素列表。然后,可以取长度-2的元素:

var list = document.querySelectorAll("#chat li");
var penultimate = list[list.length - 2];
实例:

var list=document.querySelectorAllchat li; var倒数第二位=list[list.length-2]; console.logpenutimate.textContent; 测试1 测试2 [10136]迪姆登:测试3 ,我修好了->
@Mohammad-格式化标记很好,但最好不要纠正其中的错误,以防它最终与相关,尽管在这种情况下似乎不太可能。另外,在编辑时删除“谢谢”之类的内容。我知道您已经知道了这一点,但为了完整起见,可能需要在文档选项中添加它。查询选择器“chat li:nth-last-child2”。另一个问题:如果我试图删除此元素,我使用的是:倒数第二个.removeChildpenultimate.lastchildchild;但它只删除消息,而不删除昵称。@Eff:您到底想做什么?如果您可以编辑您的问题,以包括对您的意图和需求的解释,那么您可能会得到准确解决您试图解决的问题的答案。因为倒数第二名似乎只有一个孩子测试2;因此,期望它删除看似倒数第二个节点后的兄弟节点的昵称是违反直觉的。虽然在这种情况下,因为您有一个末尾没有结束符的标记,所以您很可能没有选择正确的标记。@DavidThomas-这一点很好。是的,它适用于这个例子,但是它经常被误解,所以我不愿意指出它-@Davidthoma是我的错,我没有正确选择HTML。我需要从聊天中选择倒数第二条消息,并将其从HTML中删除。我使用的代码在上面。