分类 Project 下的文章

利用Implicit Grant授权的模式,在授权认证之后直接从回调链接URL获取access_token,优点是方便,不需要后端,缺点是不能刷新access_token,每一个月需要重新授权一次。适合轻网页应用。

授权链接:

https://openapi.baidu.com/oauth/2.0/authorize?response_type=token?client_id=CLIENT_ID?redirect_uri=http%3A%2F%2REDIRECT.URI%?scope=basic+netdisk?display=popup

从回调地址获取access_token:

function getQueryStringRegExp(name) {
 var reg = new RegExp("(^|?|&)" + name + "=([^&]*)(s|&|$)", "i");
 if (reg.test(location.href)) return unescape(RegExp.$2.replace(/+/g, " "));
 return null;
}; //这个函数用以直接获取地址栏URL中的某个fragment

可以直接使用本页面作为回调页面。加一个授权验证即可。

var accessToken = getQueryStringRegExp('access_token'); // 获取access_token
if (accessToken != null) { // 如果access_token存在,就直接进行用户授权验证
  $.ajax({
    url: 'https://openapi.baidu.com/rest/2.0/passport/users/isAppUser?access_token=' + accessToken,
    dataType: 'jsonp'
  }).done(function(data) {
    var isAuth;
    if (data.result == 1) { // 授权验证的返回值中的result参数为'1'的话,就是已经授权了
      isAuth = '已授权';
      /* 获取授权用户基本信息 */
      $.ajax({
        url: 'https://openapi.baidu.com/rest/2.0/passport/users/getLoggedInUser?access_token=' + accessToken,
        dataType: 'jsonp'
      }).done(function(data) {
        /*
        data.uid 用户数字id
        data.uname 用户名
        data.portrait 用户头像id
        头像的链接为:
        small image: http://tb.himg.baidu.com/sys/portraitn/item/{$portrait}
        large image: http://tb.himg.baidu.com/sys/portrait/item/{$portrait}
        */
      });
      /* 获取授权用户的个人云存储的基本信息 */
      $.ajax({
        url: 'https://pcs.baidu.com/rest/2.0/pcs/quota?method=info?access_token=' + accessToken,
        dataType: 'jsonp'
      }).done(function(data) {
        /*
        data.quota 是空间总量
        data.used 是已用容量
        */
      });
    } else {
      isAuth = '未授权'; // 未授权的result值为'0'
    }
  });
}

April Fools Day is coming. Prank your friends opening a never ending fake update screen on their computer. Sit back and watch their reaction.

因为自己要用,所以写了一个弹出菜单插件

jQueryPopMenu

simple responsive popup menu, it’s a jQuery plugin.

Demo

http://gucheen.github.io/jQueryPopMenu/

Link

https://github.com/gucheen/jQueryPopMenu

Intro

这是一个基于 jQuery 的弹出菜单插件。有基本的自适应特性。可以设置包括背景色、菜单按钮大小、圆角或者直角等。
:Demo页面中的所有icon都基于FontAwesome,并非必须。可以自行更改。

jQuery.popmenu-1

jQuery.popmenu-2

Info

Version 1.0
基于jQuery 2.0.3 构建。 Chrome, Safari, Firefox, Opera 可用。无IE支持。

Usage

使用 $(' #target ').popmenu(); 调用。 参数包括:

{
 'controller': true, //设定是否使用控制按钮,设置为false,菜单将一直显示
 'width': '300px', //菜单总宽度
 'background': '#34495e', //菜单背景色
 'focusColor': '#1abc9c', //菜单按钮hover时颜色
 'borderRadius': '10px', //边角弧度,设置为0,为直角
 'top': '50', //上移距离,向上移动多少就设置为多少
 'left': '0', //左移距离,设置同上
 'iconSize': '100px' //菜单按钮大小,目前是正方形设计(宽高相同)
}
//以上参数数值为默认值
//使用时无需受Demo影响,按钮可以是纯文字,内容排版自行安排设计。

注:控制按钮对应 .pop_ctrl,即名字为 pop_ctrl 的class,使用class是为了方便同时使用多个菜单,各菜单间无影响。