gpt4 book ai didi

javascript - jquery变量成瘾问题

转载 作者:行者123 更新时间:2023-12-03 12:03:56 26 4
gpt4 key购买 nike

我的变量将自身添加到自身时遇到问题。

该变量以 0 开始,然后将 1 添加到自身,然后不再这样做。我想知道是否有人知道如何解决这个问题,因为我的主要问题是变量不能是全局的,将使用多个变量。该表是 12x24,这意味着有很多 td

示例:

if you click in td:nth-child(1) that will use a different variable compared to td:nth-child(5)

这是我到目前为止的代码(jsFiddle):

jQuery:

$('table.masteries tr.p0 td').on('click', function(){
i = 0
s = $(this).find('p').text()
current_max = parseInt(s.substr(s.length - 1))
if (
$(this).is($(':nth-child(1)'))
|| $(this).is($(':nth-child(2)'))
|| $(this).is($(':nth-child(3)'))
|| $(this).is($(':nth-child(4)'))
) {
i = i + 1 /<-- the issue
console.log(i) /<-- the issue
$(this).closest('span').append(i); /<-- the issue
} else if (
$(this).is($(':nth-child(5)'))
|| $(this).is($(':nth-child(6)'))
|| $(this).is($(':nth-child(7)'))
|| $(this).is($(':nth-child(8)'))
) {

} else if (
$(this).is($(':nth-child(9)'))
|| $(this).is($(':nth-child(10)'))
|| $(this).is($(':nth-child(11)'))
|| $(this).is($(':nth-child(12)'))
) {

}
});

HTML 片段:

<table class="masteries" border="1">
<tr class="p0">
<td><p><span>0</span>/1</p></td>
<td><p><span>0</span>/4</p></td>
<td><p><span>0</span>/4</p></td>
<td><p><span>0</span>/1</p></td>

<td><p><span>0</span>/2</p></td>
<td><p><span>0</span>/2</p></td>
<td><p><span>0</span>/2</p></td>
<td><p><span>0</span>/2</p></td>

<td><p><span>0</span>/1</p></td>
<td><p><span>0</span>/3</p></td>
<td><p><span>0</span>/3</p></td>
<td><p><span>0</span>/1</p></td>
</tr>
</table>

最佳答案

改变

i = 0

if(!i){
i = 0;
}

因此,如果i已经被设置,它不会被重置为0。

更新

您还需要将 i 的所有实例更改为 this.i,因为 i 是一个本地函数变量,每次都会丢失回调函数关闭。

Updated fiddle

关于javascript - jquery变量成瘾问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25270561/

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