两种在标题中显示数量的方法(在作品中实时获取浏览量信息的方法)

第一种方法:采用点赞功能
1:在舞台上放一个点赞组件(此点赞组件可以变透明或者伪装成按钮)
2:将点赞组件命名
3:在分享标题或者描述里使用{{名字}}的方式引用即可

例子:
http://www.mugeda.com/animation/edit/a3ea3baf
第二页


第二种方法:在作品中实时获取浏览量

代码如下:
//获取浏览量信息
var crid = "58509f6e347a190221346d49";
var mugeda = Mugeda.getMugedaObject();
var mugedaEngine = {
    makeRequest: function (url, method, data, rediect, callback) {
        if (rediect) {
            var form = document.createElement('form');
            form.action = url;
            form.method = method;
            for (var name in (data || {})) {
                var ipt = document.createElement('input');
                ipt.type = 'hidden';
                ipt.name = name;
                ipt.value = data[name];
                form.appendChild(ipt);
            }
            form.submit();
        }
        else {
            var query = [];
            for (item in data) query.push(item + '=' + data[item]);
            query = query.join('&');

            var xhr = new window.XMLHttpRequest();
            xhr.onreadystatechange = function () {
                if (xhr.readyState == 4) {
                    xhr.onreadystatechange = null;
                    clearTimeout(abortTimeout);
                    if ((xhr.status >= 200 && xhr.status < 300) || xhr.status == 304) {
                        var result = xhr.responseText;
                        try {
                            callback(null, JSON.parse(result));
                        }
                        catch (e) {
                            //alert('加载失败');
                            //callback(e, null);
                            console.log(e.message);
                        }
                    }
                    else {
                        console.log(xhr.status);
                        //callback('err', null);
                        //alert('加载失败');
                    }
                }
                else {
                    console.log(xhr.readyState);
                }
            }
            xhr.open(method, url + (method.toLowerCase() == 'get' ? '?' + query : ''), true);
            xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
            var abortTimeout = setTimeout(function () {
                xhr.onreadystatechange = null;
                xhr.abort();
            }, 10 * 1000);
            xhr.send((method.toLowerCase() == 'post' ? query : null));
        }
    },
    validateWish: function(content){
        //remove blank and limit the length
        var result;
        result = content.replace(/\s/g, "").replace(/\n\t/g, "");
        if(result.length >= 30){
            alert('超过30字限制')
            return false
        }else{
            return true
        }
    },
    getGuid: function () {
        if (scoreEngine.guid == null) {
            var c = ~~Math.random() * 10000;
            var d = new Date(),
                m = d.getMilliseconds() + "",
                u = ++d + m + c;
            scoreEngine.guid = u;
        }
        return scoreEngine.guid;
    },
    getParam: function (name,u) {
        var url = u || window.location.search;
        var reg = new RegExp('(\\?|&)' + name + '=([^&?]*)', 'i');
        var arr = url.match(reg);
        if (arr) return arr[2];
    },
    removeParam: function(key, sourceURL) {
      var rtn = sourceURL.split("?")[0],
          param,
          params_arr = [],
          queryString = (sourceURL.indexOf("?") !== -1) ? sourceURL.split("?")[1] : "";
      if (queryString !== "") {
          params_arr = queryString.split("&");
          for (var i = params_arr.length - 1; i >= 0; i -= 1) {
              param = params_arr[i].split("=")[0];
              if (param === key) {
                  params_arr.splice(i, 1);
              }
          }
          rtn = rtn + "?" + params_arr.join("&");
      }
      return rtn;
    },
    sendSuccess: function () {

    }
}

mugeda.addEventListener("renderReady", function () 
{
    var scene = mugeda.scene;
    var name = scene.getObjectByName('name');
    window.addNum = function(){
        var data = {
            crid: crid,
            t: +new Date
        };
        mugedaEngine.makeRequest('http://weika.mugeda.com/server/public_counter.php/incr', 'GET', data, false, function(e,res){
            requested = false;
            if (res && res.status == 0) {
                window.getNum();
            }
        });
    }
    
    window.getNum = function(){
        var data = {
            crid: crid,
            t: +new Date
        };
        mugedaEngine.makeRequest('http://weika.mugeda.com/server/public_counter.php/count', 'GET', data, false, function(e,res){
            requested = false;
            if (res && res.status == 0) {
                mugeda.scene.getObjectByName('hitNum').text = res.count;
               
            }
        });
    }
    window.addNum();
});

样例:
http://www.mugeda.com/animation/edit/a3ea3baf
第一页

使用说明:
1:首先复制上面的代码到脚本里
2:更改第一行引号内的字符为你作品地址最后一串字符
3:在作品内新建一个文本,并命名为hitNum

效果:
hitNum文本会自动变成浏览量信息
已邀请:

13314435299

赞同来自:

希望木疙瘩能把这种类似的小功能做成可调用的命令和元件,很多高级功能需要命令行来实行,但实际上现在很多接触H5动画的朋友,并不一定是从FLASH转过来的,碰到代码就头痛无比。

要回复问题请先登录注册