js 计数输入文字长度

55 篇文章 0 订阅
36 篇文章 0 订阅

代码摘自 :http://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=http%3A%2F%2F192.168.0.12%3A8080%2FplayVideo.html%23aWQ9MzQ4%230-qzone-1-55864-d020d2d2a4e8d1a374a433f596ad1440&title=%5B%E6%8E%A8%E8%8D%90%5D%E6%B5%8B%E8%AF%95%E8%A7%86%E9%A2%91&desc=&summary=&site=&pics=http%3A%2F%2Fguatingpublic.qiniudn.com%2F2013-06-29-08-53-32.MOV%3Fvframe%2Fjpg%2Foffset%2F1%2Fw%2F440%2Fh%2F450


function escHTML(str) {
    return (str + '').replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;').replace(/\x27/g, '&#039;').replace(/\x22/g, '&quot;');
}

var getRealLen = function (s,isUTF8){
    if(typeof(s)!='string'){
        return 0;
    }
    if(!isUTF8){
        return s.replace(/[^\x00-\xFF]/g,"**").length;
    }else{
        var cc=s.replace(/[\x00-\xFF]/g,"")
        ;return(s.length-cc.length)+(encodeURI(cc).length/3);
    }
};

var tmpl = (function(){
    var cache = {};
    return function tmpl(str, data, key) {
        var strIsKey = !/\W/.test(str);
        key = key || (strIsKey ? str : null);
        var fn = key ? cache[key] = cache[key] || tmpl(strIsKey ? document.getElementById(str).innerHTML : str) :
        new Function("obj", "var p=[],print=function(){p.push.apply(p,arguments);}; with(obj){p.push('" + str
            .replace(/[\r\t\n]/g, " ")
            .split("\\'").join("\\\\'")
            .split("'").join("\\'")
            .split("<%").join("\t")
            .replace(/\t=(.*?)%>/g, "',$1,'")
            .split("\t").join("');")
            .split("%>").join("p.push('")
        + "');}return p.join('');");
        return data ? fn( data ) : fn;
    };
})();



var SHARE = window.SHARE || {};
SHARE.string = (function() {
    return {
        /**
     * 计算分享理由的字数,这里是直接使用微博的计算方法
     * 其中中文会判断为两个字节,链接将会看作11个中文字符
     */
        countDescLen: function(str) {
            var value = str.replace(/(^\s*)|(\s*$)/g, "");
            var reg = new RegExp('((news|telnet|nttp|file|http|ftp|https)://){1}(([-A-Za-z0-9]+(\\.[-A-Za-z0-9]+)*(\\.[-A-Za-z]{2,5}))|([0-9]{1,3}(\\.[0-9]{1,3}){3}))(:[0-9]*)?(/[-A-Za-z0-9_\\$\\.\\+\\!\\*\\(\\),;:@&=\\?/~\\#\\%]*)*', 'gi');
            value = value.replace(reg, '**********************');
            return Math.ceil(value.replace(/[^\x00-\xff]/ig, "**").length / 2);
        }
    };
})();


var util = {
    decodeParam : function(str){
        if(!str){
            return '';
        }
        var result;
        try{
            result = decodeURIComponent(str);
        }catch(err){
            result = '';
            window.console && console.log('[ERROR] util.decodeParam 发生异常,异常的参数串为:'+str);
            //TODO:这里还要想想如何做统计上报,把这种异常监控起来
        }
        return result;
    }
};



a标签

<a href="javascript:void(0)" οnclick="list('8');" >官方账号维护</a>

<a href="javascript:;" οnclick="changeVerifyCode();return false;">看不清,换一张</a>



动态引入js

<script type="text/javascript">
document.write([
    '<script type="text/javascript" src="http://', g_siDomain, '/ac/qzfl/release/qzfl_for_qzone.js" charset="utf-8"><\/script>',
    '<script type="text/javascript" src="http://', g_siDomain, '/c/=/qzone/app/qzshare/script/qzshare.onekey.js,/qzone/app/qzshare/shareqq/shareqq.js" charset="utf-8"><\/script>',
    '<script type="text/javascript" src="http://tajs.qq.com/stats?sId=17855777" charset="utf-8" ><\/script>'
].join(''));
</script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值