http://tu.dog/打开调试工具我从未见过如此单身狗的js代码,仔细看看还挺通俗易懂。js中使用中文变量名是否更优雅?var总视窗=this,总文档=document,文档正文=总文档.body,浏览器=navigator,弹窗=alert,编码=encodeURIComponent,数学=Math,控制台=console,用户系统,稍后运行=setTimeoutvar标贴样板=总文档.createElement('div')标贴样板.className='标贴隐藏'var绑定动画结束事件=function(元素,回调函数){元素.addEventListener('webkitAnimationEnd',回调函数,0)元素.addEventListener('mozAnimationEnd',回调函数,0)元素.addEventListener('animationend',回调函数,0)},绑定缓动结束事件=function(元素,回调函数){元素.addEventListener('webkitTransitionEnd',回调函数,0)元素.addEventListener('mozTransitionEnd',回调函数,0)元素.addEventListener('transitionEnd',回调函数,0)},弹出浏览器提示窗口=function(标题,说明文字,图标地址){if(!总视窗.webkitNotifications)returnvar弹出窗=总视窗.webkitNotifications.createNotification(图标地址,标题,说明文字)弹出窗.onshow=function(){稍后运行(function(){弹出窗.cancel()},7e3)}弹出窗.onclick=function(){总视窗.focus()弹出窗.cancel()}弹出窗.replaceId='土狗提示'弹出窗.show()},转义超文本标记语言=function(文本){return文本.replace(/(^\s*)|(\s*$)/g,'').replace(/&/g,'&').replace(/.replace(/>/g,'>').replace(/\'/g,''').replace(/\"/g,'"')},获取随机数=function(范围,调整){范围=范围||75调整=调整||2return数学.floor(数学.random()*范围+调整)},根据文字调整大小=function(文本){var文本长度=文本.lengthif(文本长度==1)return3.8return.7+(4/文本长度)},删除标贴=function(父级元素){if(this.className!='标贴')returnthis.className='标贴'if(父级元素=this.parentNode)父级元素.removeChild(this)},二五五随机数=function(){return数学.floor(数学.random()*25)+225},透明颜色值=function(){return'background-color:rgba('+二五五随机数()+','+二五五随机数()+','+二五五随机数()+',.8)'},展示标贴=function(标贴信息){var用户唯一号=标贴信息[0],文本=标贴信息[1],横向偏移=+标贴信息[2]||获取随机数(),纵向偏移=+标贴信息[3]||获取随机数()var标贴=标贴样板.cloneNode(1)标贴.setAttribute('用户唯一号',用户唯一号)标贴.innerHTML=转义超文本标记语言(文本)//为了解决火狐的innerText问题换成了innerHTML+正则转义T_T标贴.style.cssText='left:'+横向偏移+'%;top:'+纵向偏移+'%;font-size:'+根据文字调整大小(文本)+'em;background-color:'+获取用户颜色(用户唯一号)用户信息卡片震动(用户唯一号)var用户信息=获取用户信息(用户唯一号)if(用户信息){总文档.title=用户信息[2]+':'+文本//收藏图标.href='http://tp2.sinaimg.cn/'+用户信息[1]+'/180/1'弹出浏览器提示窗口(文本,'来自'+用户信息[2]+'的消息',收藏图标.href)控制台.log('%c'+用户信息[2],'background-color:rgb('+用户信息[3]+')',文本)}绑定动画结束事件(标贴,删除标贴)弹幕框.appendChild(标贴)return标贴},展示标贴们=function(返回值){返回值=返回值.split(/\n/)if(返回值.length>1&&初次获取首屏信息){初次获取首屏信息--}var指针=返回值.length,临时变量,每次运行函数=function(){//临时变量=[返回值[指针].match(/^\d+/),返回值[指针].replace(/^\d+,/,'')]指针--展示标贴(返回值[指针].split(/\t/))if(指针>0)稍后运行(每次运行函数,数学.floor(数学.random()*1500))else{//展示完一整组标贴之后if(初次获取首屏信息)网络隧道.send('√'+初次获取首屏信息)}}每次运行函数()},超文本传输请求=function(地址,回调函数){var超文本传输请求=newXMLHttpRequest()超文本传输请求.open('GET',地址,1)if(回调函数)超文本传输请求.onload=function(){回调函数(超文本传输请求.responseText)}超文本传输请求.send()},未登录时展示标贴=function(){超文本传输请求('x/?msg',展示标贴们)},用户们={},添加单条用户信息=function(用户信息){用户们[+用户信息[0]]=用户信息},处理用户信息=function(用户们文本){用户们文本=用户们文本.split(/\n/)var指针=用户们文本.length,临时变量while(指针--){临时变量=用户们文本[指针].split('')添加单条用户信息(临时变量)if(+临时变量[4])用户上线(临时变量)}初次获取用户信息=0if(初次获取用户信息)网络隧道.send('☺'+初次获取用户信息*10)},获取用户信息=function(用户唯一号){var返回值if(返回值=用户们[用户唯一号])return返回值return['0','0','土狗','239,236,201']},获取用户颜色=function(用户唯一号){var返回值if(返回值=用户们[用户唯一号])return'rgba('+返回值[3]+',.8)'return'rgba(239,236,201,.8)'},用户信息卡片震动=function(用户唯一号){var用户信息卡片=总视窗['用户编号'+用户唯一号]if(!用户信息卡片)return用户信息卡片.className='用户卡片震铃'}var用户信息模板=总文档.createElement('div')用户信息模板.className='用户卡片转入'var用户上线=function(用户信息){var用户唯一号=用户信息[0],用户微博唯一号=用户信息[1],用户昵称=用户信息[2],用户颜色=用户信息[3]控制台.log('%c'+用户信息[2],'background-color:rgb('+用户信息[3]+')',/上线了!/)if(用户信息卡片=总视窗['用户编号'+用户唯一号])return用户信息卡片.className='用户卡片'if(用户系统.me.uid==用户唯一号)return用户信息卡片添加单条用户信息(用户信息)//console.log(用户信息,/传入格式是这样的/)var用户信息卡片=用户信息模板.cloneNode(1)用户信息卡片.id='用户编号'+用户唯一号用户信息卡片.innerHTML=''+用户昵称+''绑定动画结束事件(用户信息卡片,function(){this.className='用户卡片'})