gpt4 book ai didi

javascript - 在使用 vanilla js 进行控制台日志之前单击 li 两次?

转载 作者:行者123 更新时间:2023-12-02 06:22:08 24 4
gpt4 key购买 nike

我是 JavaScript 新手,所以我希望这不是一个愚蠢的错误。我有一个包含 5 里元素的无序列表。我试图从单击的 li 中获取文本。 (控制台.日志)。但它只会在我第二次单击 li 时console.log。我尝试了很多方法但没有任何效果,有人可以帮助我吗?谢谢。

这是我的代码...

var mainUl = document.querySelector('#main-list').addEventListener('click', liPick);
// //console.log(mainUl);

function liPick() {
var ele = document.querySelectorAll('#main-list li');
ele.forEach(function(item) {
item.onclick = function(e) {
//var myText = this.innerText;
//console.log(myText);
//alert(this.innerText);
//var myDiv = document.getElementById('#whatclicked');

console.log(this.innerText);

}
});
<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=divice-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatable" content="ie=edge">
<link rel="stylesheet" href="./css/style.css">
<script src="./js/script.js" defer></script>
<title>JavaScript Selectors</title>
</head>

<body>
<div id="container">
<ul id="main-list">
<li class="list-items">Item 1</li>
<li class="list-items">Item 2</li>
<li class="list-items">Item 3</li>
<li class="list-items">Item 4</li>
<li class="list-items">Item 5</li>
</ul>
</div>
<div id="whatclicked"></div>
</body>

</html>

最佳答案

尝试正确设置查询选择器。现在,只要变量 mainUl 未被访问,它就不会设置它。尝试从这里开始

var mainUl = document.querySelector('#main-list').addEventListener('click',liPick);

到此

document.querySelector('#main-list').addEventListener('click',liPick);

一旦文档加载就会设置它

关于javascript - 在使用 vanilla js 进行控制台日志之前单击 li 两次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61036112/

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