javascript - 每个 session 仅 jQuery getJSON 一次

标签 javascript jquery ajax session getjson

我使用如下代码获取当前的 Facebook 点赞数:

$(document).ready(function() {
    $.getJSON('https://graph.facebook.com/<username>?callback=?', function(data) {
        var fb_count = data['likes'].toString();
        $('#fb_count').html(fb_count);
    });
});

但是,当用户浏览页面时,请求会再次发送。有没有办法每个 session 仅获取一次数据,并将获取的值保留在 HTML 元素中,而无需新请求,直到用户关闭浏览器?

感谢您的帮助!

最佳答案

是的,您可以使用HTML5 localstorage来做到这一点,

下面的代码可能对您有帮助,

$(document).ready(function() {
    if(typeof(Storage)!=="undefined" && localStorage.fb_count)
    {
        $('#fb_count').html(localStorage.fb_count);
    }
    else{
        $.getJSON('https://graph.facebook.com/<username>?callback=?', function(data) {
           var fb_count = data['likes'].toString();
           $('#fb_count').html(fb_count);
           if(typeof(Storage)!=="undefined")
              localStorage.fb_count=fb_count;
        });
    }
});

阅读http://www.w3schools.com/html/html5_webstorage.asp

http://www.w3.org/TR/webstorage/

关于javascript - 每个 session 仅 jQuery getJSON 一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17267948/

相关文章:

java - Spring MVC @RequestBody 不适用于 jquery ajax?

javascript - 单击时样式切换器跳转到页面顶部

javascript - 重新加载表格而不刷新 Django 中的页面

Javascript 参数偏好

javascript - React - 父类组件功能更改子组件的类

javascript - 语义 UI 中的表主体没有表行导致 validateDomNesting 错误

jquery - 沿父div高度跟踪的 float div内容

javascript - 正则表达式封装不在括号内的内容

javascript - 提交按钮在 Chrome 中有效,但在 Firefox 或 IE 中无效

javascript - 在javascript中修改具有已知位置的JSON对象的值