gpt4 book ai didi

javascript - 事件处理程序的动态附件不起作用

转载 作者:行者123 更新时间:2023-11-28 19:09:01 25 4
gpt4 key购买 nike

我只是在 js 中尝试一个小实验。是这样的;我有一个 ul ,低于大约 5 li ,现在我附加一个事件处理程序,用于单击第一个 li ,使用如下选择器:

     var elem = $('ul li:nth-child('+ i +')');

现在我添加函数 funk,如下所示:

var funk = function() {
return i < 5 ? i++ : i = 0 ;
}

现在我想要发生的是,一旦单击第一个 li,我希望将事件处理程序附加到下一个 li,并且当我单击li,点击事件应该附加到li之后,依此类推...

到目前为止我已经编写了以下代码:

            var i = 0;

$('document').ready(function(){
str = funk();
console.log(str);

var elem = $('ul li:nth-child('+ i +')');

elem.on('click' , function(){
console.log('logged');
funk();
});
});

var funk = function() {
return i < 5 ? i++ : i = 0 ;
}

现在,代码中存在一些我无法解决的明显错误,由于某种原因,funk() 函数本身无法运行,因为 I 从未增加。

有人可以帮我附加一个动态事件处理程序吗?

<强> FIDDLE HERE

Ae-x。

最佳答案

您的代码是正确的,问题在于声明。在调用之前移动函数定义。

问题出在 func 函数上。它是一个变量,因此它最初被声明并设置为未定义,然后所有行都将被执行,但 func 未定义,因此它会抛出错误。

关于javascript - 事件处理程序的动态附件不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31099209/

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