計(jì)算新浪Weibo消息長(zhǎng)度(還可以輸入119字)
更新時(shí)間:2013年07月02日 17:02:01 投稿:whsnow
此文為計(jì)算新浪Weibo的消息長(zhǎng)度的方法. 就是在發(fā)言的時(shí)候還可以輸入多少字,具體的實(shí)現(xiàn)如下,感興趣的朋友可以參考下哈,希望對(duì)大家有所幫助
此文為計(jì)算新浪Weibo的消息長(zhǎng)度的方法. 就是 (發(fā)言請(qǐng)遵守社區(qū)公約,還可以輸入119字).
復(fù)制代碼 代碼如下:
var getMessageLength = (function() {
var byteLength = function(b) {
if(typeof b == "undefined") {
return 0;
}
var a = b.match(/[^\x00-\x80]/g);
return(b.length + (!a ? 0 : a.length));
};
return function(message) {
message = message || '';
message = message.replace(/\r\n/g, "\n");
var c = 41,
d = 140,
e = 20,
f = message,
g = message.match(/http:\/\/[a-zA-Z0-9]+(\.[a-zA-Z0-9]+)+([-A-Z0-9a-z_\$\.\+\!\*\(\)\/,:;@&=\?\~\#\%]*)*/gi) || [],
h = 0;
for(var i = 0, j = g.length; i < j; i++) {
var k = byteLength(g[i]);
if(/^(http:\/\/t.cn)/.test(g[i])) {
continue;
}
/^(http:\/\/)+(t.sina.com.cn|t.sina.cn)/.test(g[i]) || /^(http:\/\/)+(weibo.com|weibo.cn)/.test(g[i]) ? h += k <= c ? k : k <= d ? e : k - d + e : h += k <= d ? e : k - d + e;
f = f.replace(g[i], "");
}
var l = Math.ceil((h + byteLength(f)) / 2);
return l;
};
})();
相關(guān)文章
javascript ASCII和Hex互轉(zhuǎn)的實(shí)現(xiàn)方法
下面小編就為大家?guī)?lái)一篇javascript ASCII和Hex互轉(zhuǎn)的實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-12-12
element-plus 官方表格排序問(wèn)題小結(jié)
在使用Element Plus官方API時(shí),表格默認(rèn)排序可能會(huì)遇到問(wèn)題,一個(gè)列表可能被多次排序影響數(shù)據(jù)展示,解決方法是修改useSortTable.js文件,這樣可以確保表格按預(yù)期正確排序,更多詳情可查閱相關(guān)的技術(shù)文檔或資源2024-10-10
整理Javascript流程控制語(yǔ)句學(xué)習(xí)筆記
整理Javascript流程控制語(yǔ)句學(xué)習(xí)筆記,之前一系列的文章是跟我學(xué)習(xí)Javascript,本文就是進(jìn)一步學(xué)習(xí)javascript流程控制語(yǔ)句,希望大家繼續(xù)關(guān)注2015-11-11
JS隨拖拽速度設(shè)置傾斜角度的實(shí)現(xiàn)代碼
這篇文章主要給大家介紹了JS如何隨拖拽速度設(shè)置傾斜角度,文中有詳細(xì)的代碼講解,對(duì)大家的學(xué)習(xí)或工作有一定的幫助,感興趣的小伙伴可以自己動(dòng)手嘗試一下2023-09-09
深入淺出JS的Object.defineProperty()
這篇文章主要介紹了深入淺出JS的Object.defineProperty(),文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下2022-06-06

