【问题标题】:I want to make browser remember the specific dom in jquery我想让浏览器记住jquery中的特定dom
【发布时间】:2013-06-23 18:10:36
【问题描述】:

我想通过类名存储一些 dom。通过存储一些 dom,我的意思是我想要区分的所有 div 都具有相同的类名,但我想稍后在 if 语句中使用它,比如单击两次然后单击三次。有可能吗?

【问题讨论】:

  • 只使用javascript变量缓存DOM元素

标签: jquery class dom


【解决方案1】:

如果您需要收集整个网站的点击访问等,您可以将该数据存储到 cookie 中。

http://www.electrictoolbox.com/jquery-cookies/ 是一个 jQuery 插件,可以帮助您在 jQuery 中设置/管理 cookie。

在“包含”jQuery-cookies 之后设置一个 cookie:

$.cookie("clicked", 0);

如果您只想检查一个 div 被点击的频率等,那么存储整个 DOM 对我来说似乎不是一个好主意。所以我们只需调用被点击的 cookie 并将其值设为 0。

现在您可能有一些 onClick 函数,只需获取 cookie 值并在单击后使用 1 对其进行迭代,如下所示:

var clicked = $.cookie("clicked");
clicked += 1;
$.cookie("clicked", clicked);

【讨论】:

    【解决方案2】:

    这是一个 jQuery 函数,用于记住 (.detach) 变量中的元素,然后将它们附加回 DOM:

    jQuery(function () {
        var save = $('.special').detach();
        $('button').click(function() {
            if (save.length) {
                save.eq(0).appendTo(".targetdiv");
                save = save.filter(function(i) { return i; });
            } else {
                save = $('.special').detach();
            }
        });
    });
    

    jsfiddle

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-02
      • 1970-01-01
      • 1970-01-01
      • 2011-12-21
      • 2020-06-03
      • 1970-01-01
      • 1970-01-01
      • 2011-09-22
      相关资源
      最近更新 更多