gpt4 book ai didi

javascript - 使用 jquery/javascript 单击切换

转载 作者:行者123 更新时间:2023-11-28 16:06:06 30 4
gpt4 key购买 nike

我想单击一个表格元素并让它执行 x 第一次单击,如果再次单击则执行 Y

<td class='p' id='e1' onclick="myFunction2()"><img src='person2.png'/></td>

这就是我刚才单击一下的 HTML,但我希望更改它,以便可以选择一个项目,然后如果再次单击取消选择,则会触发不同的功能。

最佳答案

我将假设(您没有说)您希望每次点击时交替调用该函数:

$('#e1').on('click', function() {

// retrieve current state, initially undefined
var state = $(this).data('state');

// toggle the state - first click will make this "true"
state = !state;

// do your stuff
if (state) {
// do this (1st click, 3rd click, etc)
} else {
// do that
}

// put the state back
$(this).data('state', state);
});

这使用 jQuery 的 .data 功能将按钮的单击状态存储在按钮元素本身中。

或者,您可以使用外部变量,但应该将回调包含在闭包中(在本例中是立即调用的函数表达式),以防止该变量成为全局变量:

(function() {
var state;

$('#e1').on('click', function() {
state = !state;
if (state) {
// do this (1st click, 3rd click, etc)
} else {
// do that
}
});
})();

如果 .on 调用和 state 变量声明位于 jQuery document.ready 处理程序内,则具有相同的效果。

关于javascript - 使用 jquery/javascript 单击切换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14882751/

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