如何在jquery中跟踪最后三个点击的ID

how to track last three clicked ID's in jquery?

本文关键字:三个 ID jquery 最后 跟踪      更新时间:2023-09-26

我是jQuery的新手,我想获取最后div ID's最少的最后三个iD的列表。

我的需要是当用户单击取消按钮时,我想将用户移动到最后一个单击的div。

试试这个:

var clicks = [];
$("div[id^=test]").on('click',function() {
    clicks.push(this.id);
});
$("button").on('click',function() {
    console.log(clicks.pop())
});

这使用一个数组来存储所有点击和显示,并在点击按钮时删除最后一个。

阅读有关 .push() 和 .pop() 的信息。

在这里演示

创建一个"history"数组,每次点击div 时都会推送 id:

var history = [];
$('div').click(function(){
    history.unshift(this.id);
})

在取消时单击:

$('button.cancel').click(function(){
    history.shift();
})

要保存以前的点击次数,您需要将点击次数存储在数组中,如下所示:

clicks = [];
$(function () {
    $("div").on("click", function (e) {
        // The following is what you wanted, but the uncommented code is better (as it saves future DOM lookups)
        // clicks.shift($(this).attr("id"));
        clicks.shift(this);
        // If you want to use jQuery on the objects, you'll need to call jQuery on them ex: $(this)
        // If you do want to remove previous elements, uncomment the following code
        // if(clicks.length > 3){
        //  clicks.pop();
        // }
    });
});

每次单击时,单击的对象将存储在数组(clicks.push(this) )。稍后可以引用该数组。 clicks[0]将具有最近的点击次数,clicks[1]最近的点击次数,依此类推。

因此,要执行您所描述的操作,您将按照以下方式创建一个函数:

$(function () {
    $("#cancel").on("click", function (e) {
        $(clicks[1]).yourMethods();
    });
});