Home > Article > Web Front-end > Main.js_javascript tips taken from Qidian
String.prototype.trim = function()
{
return this.replace(/(^s*)|(s*$)/g, "");
}
String.prototype.len=function()
{
return this.replace(/[^x00-xff]/g,'aa').length;
}
function StringBuilder(value)
{
this.strings = new Array("");
this.append(value);
}
// Appends the given value to the end of this instance.
StringBuilder.prototype.append = function (value)
{
if (value)
{
this.strings.push(value);
}
}
// Clears the string buffer
StringBuilder.prototype.clear = function ()
{
this.strings.length = 1;
}
// Converts this instance to a String.
StringBuilder.prototype.toString = function ()
{
return this.strings.join("");
}
//string format prototype
// sample: var test="my name is {0} {2} " ;
// alert(test.format('liang','zhonghua');
if (!String._FORMAT_SEPARATOR){
String._FORMAT_SEPARATOR = String.fromCharCode(0x1f);
String._FORMAT_ARGS_PATTERN = new RegExp('^[^' String._FORMAT_SEPARATOR ']*'
new Array(100).join('(?:.([^' String._FORMAT_SEPARATOR ']*))?'));
}
if (!String.format)
{
String.format = function (s){
return Array.prototype.join.call(arguments, String._FORMAT_SEPARATOR).
replace(String._FORMAT_ARGS_PATTERN, s);
}
}
if (!''.format)
{
String.prototype.format = function (){
return (String._FORMAT_SEPARATOR
Array.prototype.join.call(arguments, String._FORMAT_SEPARATOR)).
replace(String._FORMAT_ARGS_PATTERN, this);
}
}
//end string format
function checkLoginByCookie()
{
var cookieId="AUTHTEST";
if(window.location.href.toLowerCase().indexOf("qidian.com") > -1)
{
cookieId="cmfuToken";
}
if((GetCookie(cookieId)!=null && GetCookie(cookieId).length > 0 ))
{
return true;
}
else
{
if(GetCookie('cmfu_al') != null && GetCookie('cmfu_al').length > 0)
{
return true;
}
}
return false;
}
function getUrlParam(name)
{
var reg = new RegExp("(^|&)" name "=([^&]*)(&|$)","i");
var r = window.location.search.substr(1).match(reg);
if (r!=null)
{
return unescape(r[2]);
}
else
{
return null;
}
}
function $(objName)
{
if(document.getElementById)
{
return document.getElementById(objName );
}
else if(document.layers)
{
return eval("document.layers['" objName "']");
}
else
{
return eval('document.all.' objName);
}
}
function DateAdd(BaseDate, interval, DatePart)
{
var dateObj = new Date(BaseDate.replace("-",","));
var millisecond=1;
var second=millisecond*1000;
var minute=second*60;
var hour=minute*60;
var day=hour*24;
var year=day*365;
var newDate;
var dVal = new Date(dateObj)
var dVal=dVal.valueOf();
switch(DatePart)
{
case "ms": newDate=new Date(dVal millisecond*interval); break;
case "s": newDate=new Date(dVal second*interval); break;
case "mi": newDate=new Date(dVal minute*interval); break;
case "h": newDate=new Date(dVal hour*interval); break;
case "d": newDate=new Date(dVal day*interval); break;
case "y": newDate=new Date(dVal year*interval); break;
default: return escape("日期格式不对");
}
newDate = new Date(newDate);
return newDate.getFullYear() "-" (newDate.getMonth() 1) "-" newDate.getDate() ;
}
//增加当前日期的天数
Date.prototype.AddDays=function (interval)
{
var dateObj = this;
var millisecond=1;
var second=millisecond*1000;
var minute=second*60;
var hour=minute*60;
var day=hour*24;
var year=day*365;
var newDate;
var dVal = new Date(dateObj)
var dVal=dVal.valueOf();
newDate=new Date(dVal day*interval);
newDate = new Date(newDate);
return newDate
}
function SetCookie(name, value)
{
var argv = SetCookie.arguments;
var argc = SetCookie.arguments.length;
var expires = (argc > 2) ? argv[2].toGMTString() : (new Date()).AddDays(30).toGMTString();;
var path = (argc > 3) ? argv[3] : "/";
var domain = (argc > 4) ? argv[4] : null;
var secure = (argc > 5) ? argv[5] : false;
var content = name "=" escape(value) ";";
if(expires != null)
{
content = " expires=" expires ";";
}
if(path != null)
{
content = " path=" path ";";
}
if(domain != null)
{
content = " domain=" domain ";";
}
document.cookie = content;
}
function GetCookie(cookieName)
{
var cookieString = document.cookie;
var start = cookieString.indexOf(cookieName '=');
// The reason for adding the equal sign is to avoid having
// the same string as cookieName in some Cookie values.
if (start == -1) // Not found
return null;
start = cookieName.length 1;
var end = cookieString.indexOf('; ', start);
if (end == -1) return unescape(cookieString.substring(start));
return unescape(cookieString.substring(start, end));
}
/*Text box gets focus*/
function TextBoxOnFocus(txtControl,strDefaultText)
{
if (txtControl.value==strDefaultText)
txtControl.value="";
}
/*The text box loses focus*/
function TextBoxOnBlur(txtControl,strDefaultText)
{
if (txtControl.value.replace(/(^[s]*)|( [s]*$)/g,"")=="")
txtControl.value=strDefaultText;
}
/*Function: Pop-up group message window*/
function MultiSendWin(subject,content)
{
var win =window.open(uploadURL "?subject=" subject "&content=" content,"","menubar=no,width=480,height= 550,resizeable=no","");
return false;
}
/*Function: Pop-up message window
function SpaceSendMsg(toUserId)
{
var win =window.open(spaceSendMsgURL "?toUserId=" toUserId,"","menubar=no,width=500,height=400,resizeable=no","");
return false;
}
*/
function ShowServerMessage(result)
{
eval(result.value);
}
//Press enter to submit the form
function KeydownSubmitForm(btnId)
{
var btn=document.getElementById(btnId);
if (btn!=null&& event.keyCode== 13)
{
event.return Value= false;
event.keyCode=9;
btn.click();
}
}
//ReadChapter - Voucher js
function MDown(Object) {
Obj=Object.id
document.all(Obj).setCapture()
pX=event.x-document.all(Obj).style.pixelLeft;
pY=event.y -document.all(Obj).style.pixelTop;
}
function MMove(){
if(Obj!=''){
document.all(Obj).style .left=event.x-pX;
document.all(Obj).style.top=event.y-pY;
}
}
function MUp(){
if(Obj!=''){
document.all(Obj).releaseCapture();
Obj='';
}
}
//Close capture Coupon information
function LayerClose(divDiscount){
document.getElementById(divDiscount).style.visibility="hidden";
}
//Display coupon information
function LayerShow(divDiscount,discountPrize){
var prizeUI = document.getElementById(divDiscount);
prizeUI.style.left = screen.width-530;
prizeUI.style.top = screen.Height - 480 ;
prizeUI.style.visibility="visible";
document.getElementById("lblPrize1").innerHTML=discountPrize;
document.getElementById("lblPrize2").innerHTML=discountPrize;
window.setInterval("LayerClose('" divDiscount "')",15000);
}
//Help masterpage use
function HideMenu(menuid)
{
var obj = document.getElementById(menuid);
if(obj.style.display == "none")
{
obj.style.display = "";
}
else
{
obj.style.display = "none";
}
if(obj.style.display == "")
{
var tmpId = "M0";
for(var i = 1 ; i {
var myid = tmpId i;
if(myid != menuid)
{
document.getElementById(myid).style.display = "none";
}
}
}
}
/* div login */
function ShowLoginDiv()
{
var builder = new StringBuilder();
builder.append("
"); builder.append("登录"); builder.append(" | "); "); builder.append("×"); builder.append(" | ");
"); builder.append(""); builder.append(" | ");