【问题标题】:Need a help with a jquery click count需要有关 jquery 点击计数的帮助
【发布时间】:2011-08-18 10:15:41
【问题描述】:

到目前为止,我已经得到了这个 JavaScript:

$(document).ready(function() {
    $("#flash").click(function() {
        $(this).html('<img src="http://ruh.kz/sites/default/files/ajax-loader.gif" />');
        $(this).load("http://ruh.kz/sites/all/themes/ruh/sunit.php");
        $('#counter').html(function(i, val) {
            return val * 1 + 1
        });
    });
});

随附此 HTML:

<div id="flash">
    <img src="http://ruh.kz/sites/default/files/sunit.jpg" />
</div>
<div id="counter">0</div>

(Demo)

  1. 一个问题是页面刷新后会重置...如何保存计数?

  2. 在the example on jsfiddle.net 中,它运行良好。然而,在我的 Drupal 页面上,它没有。当我按下&lt;div id="flash"&gt; 时,计数器“0”消失。这里可能有什么问题?

【问题讨论】:

  • Heihachi:将来,您能否在问题中包含您的代码 并在 jsfiddle 上链接到它? StackOverflow 问题应该独立于其他任何问题!

标签: jquery


【解决方案1】:
  1. 您必须使用 cookie 来存储页面请求之间的点击次数,因为每次重新加载时都会重新加载 javascript,因此您的点击次数将会丢失。

【讨论】:

    【解决方案2】:
    1. 你可以发布ajax请求来保存它或保存到cookies
    2. 那里有#counter 吗?

    【讨论】:

    • 你能举个例子吗? 2- 是的,我有
    【解决方案3】:

    正如其他人在这里提到的,cookie 是一种存储页面刷新点击次数的解决方案。另一种选择是将它们存储在与登录用户关联的数据库中。 Cookies 肯定会简单得多,但是如果您在 Drupal 站点上运行它并且有不错的 PHP/MySQL 经验,那么数据库选项也很简单。主要取决于点击次数的重要性。需要永久保存吗?无论他/她使用什么计算机,用户都应该看到正确的数字吗?如果这些问题中的任何一个的答案是“是”,那么就需要数据库解决方案。

    至于为什么它不能在您的 Drupal 站点上运行,您必须提供更多信息。您的控制台中是否出现任何 JavaScript 错误?

    【讨论】:

      猜你喜欢
      • 2019-03-07
      • 2011-05-09
      • 2011-03-15
      • 2023-02-24
      • 1970-01-01
      • 1970-01-01
      • 2010-12-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多