0

我有一个简单的 jQuery.click()函数:

$(".clicky a").click(function(e){
   e.preventDefault();
   var val = $(this).html();
   stuffCreate(val);
});

用于驱动 HTML 代码的动态生成:

function stuffCreate(stuff) {
   var firststuff ="<div class='cont'><strong>"+stuff+"</strong></div>";
   $(firststuff).appendTo("#data"+stuff+" .innertables");
}

varval始终是一个整数,并且页面上有一堆。我想要做的是有一些方法来跟踪我所做的点击并防止在每次后续点击时重新创建动态 HTML——我想保留生成的 HTML,呃,生成,即不变,持久和可访问,因为它是在初始点击时生成的。我尝试使用数组来跟踪点击,但无法弄清楚如何利用这些值来防止在第一次点击之后重新创建动态 HTML。我欢迎您在这里提供的任何帮助。

4

1 回答 1

1

如果您想在第一次单击元素时运行一个函数但仍跟踪后续单击,那么您可以将一个简单的计数器属性附加到侦听器:

$('a').on('click', function(e) {
    this.counter = this.counter || 0;
    this.counter++;
    if (this.counter <= 1) {
        // do something
    }
});

例子

http://jsfiddle.net/q3LVS/1/

于 2014-05-08T18:30:43.093 回答