common.js js中常用方法


//创建CSS样式段
//classid: CSS样式段ID
//font: 字体
//size: 字体大小
//color: 字体颜色
//style: 字体风格
function FCMakeCSSClass(classid, color, style, font, size) {
 return "." + classid + " {/n/tcolor: " + color + ";/n"
  + (style.indexOf("b") < 0 ? "" : "/tfont-weight: bold;/n")
  + (style.indexOf("i") < 0 ? "" : "/tfont-style: italic;/n")
  + (style.indexOf("u") < 0 ? "" : "/ttext-decoration: underline;/n")
  + (font == null ? "" : "/tfont-family: " + font + ";/n")
  + (size == null ? "" : "/tfont-size: " + size + ";/n")
  + "}/n";
}
//--------------------------------------------------------------

//创建指定语言的CSS样式,返回转换好的CSS代码,如果语言不存在则返回null
//lang: 语法加亮规则的语言ID
//font: 所用字体,如果为对象,就用每个对象成员对应相应的classid
//size: 所用字体的大小,如果为对象,就用每个对象成员对应相应的classid
function FCMakeCSS(lang, font, size) {
 var syntax = FCSyntaxDef[lang];
 if (syntax == null) return null;
 var fontList = font instanceof Object;
 var sizeList = size instanceof Object;
 //定义普通文本样式
 var css = FCMakeCSSClass(lang + "_Default", syntax.color, syntax.style,
  fontList ? font.comment : font, sizeList ? size.comment : size);
 //定义注释样式
 if (syntax.comments.length > 0) {
  css += FCMakeCSSClass(lang + "_Comments", syntax.cmtcolor, syntax.cmtstyle,
   fontList ? font.comment : font, sizeList ? size.comment : size);
 }
 //定义块样式
 for (var classid in syntax.blocks) {
  var block = syntax.blocks[classid];
  css += FCMakeCSSClass(lang + "_" + classid, block.color, block.style,
   fontList ? font[classid] : font, sizeList ? size[classid] : size);
 }
 //定义关键词样式
 for (var classid in syntax.keywords) {
  var group = syntax.keywords[classid];
  css += FCMakeCSSClass(lang + "_" + classid, group.color, group.style,
   fontList ? font[classid] : font, sizeList ? size[classid] : size);
 }
 return css;
}
//--------------------------------------------------------------

//转换源代码到HTML加亮代码,返回转换后代码,如果语言不存在则返回null
//srcCode: 需要被转换的源代码
//lang: 转换所用的语法加亮规则的语言ID
function FCTranslate(srcCode, lang) {
 var syntax = FCSyntaxDef[lang];
 if (syntax == null) return null;
 var src = srcCode.split("/n");

 var encode = FCHtmlEncode;
 //定义普通文本加亮词缀
 var affix = FCMakeAffix(lang + "_Default", syntax.color, syntax.style);
 var defPref = affix.prefix, defSuff = affix.suffix;
 //定义注释加亮词缀
 var comments = syntax.comments;
 if (comments.length > 0) {
  var affix = FCMakeAffix(lang + "_Comments", syntax.cmtcolor, syntax.cmtstyle);
  var cmtPref = affix.prefix, cmtSuff = affix.suffix;
 }
 //定义块加亮词缀
 var blkBegin = [], blkEnd = [], blkEsc = [], blkLines = [], blkPref = [], blkSuff = [];
 for (var classid in syntax.blocks) {
  var block = syntax.blocks[classid];
  blkBegin.push(block.begin);
  blkEnd.push(block.end);
  blkEsc.push(block.escape);
  blkLines.push(block.lines);
  var affix = FCMakeAffix(lang + "_" + classid, block.color, block.style);
  blkPref.push(affix.prefix);
  blkSuff.push(affix.suffix);
 }
 //定义关键词加亮词缀表
 var keywords = [], kwPref = [], kwSuff = [];
 for (var classid in syntax.keywords) {
  var group = syntax.keywords[classid];
  keywords.push(group.list);
  var affix = FCMakeAffix(lang + "_" + classid, group.color, group.style);
  kwPref.push(affix.prefix);
  kwSuff.push(affix.suffix);
 }
 //断词转换
 var delim = syntax.delimiters;
 for (var index = 0, index2 = 0; index < src.length; index++, index2++) {
  var code = src[index];
  var htmlCode = "";
  for (var pos1 = 0, pos2 = 0, ch = null, flag = 0; ch != ""; pos2++) {
   ch = code.substr(pos2, 1);
   if (ch != "" && flag == 0 && delim.indexOf(ch) < 0) continue;
   //如果为持续文本则继续,否则截断(flag:0文本,1空格,2标点)
   if (pos2 <= pos1) {
    flag = ch.match(/s/g) ? 1 : 2;
    continue;
   }
   var word = code.substr(pos1, pos2 - pos1); //截取词
   if (flag == 1) { //空格
    htmlCode += word;
   } else {
    if (flag == 2) { //标点
     //判别注释
     for (var i in comments) {
      if (code.substr(pos1, comments[i].length) != comments[i]) continue;
      htmlCode += cmtPref + encode(code.substr(pos1)) + cmtSuff;
      word = "";
      break;
     }
     if (word == "") break;
     //判别块
     for (var i in blkBegin) {
      if (code.substr(pos1, blkBegin[i].length) != blkBegin[i]) continue;
      var end = blkEnd[i], esc = blkEsc[i];
      for (pos2 = pos1 + blkBegin[i].length; pos2 = code.indexOf(end, pos2);) {
       if (pos2 < 0) {
        if (blkLines[i] && index < src.length - 1) {
         pos2 = code.length + 2;
         code += "/n" + src[++index];
         continue;
        }
        htmlCode += blkPref[i] + encode(code.substr(pos1)) + blkSuff[i];
        word = "";
        break;
       } else if (esc == null || code.substr(pos2 - esc.length, esc.length) != esc) {
        pos2 += end.length;
        break;
       }
       pos2 += end.length;
      }
      if (pos2 >= 0) {
       htmlCode += blkPref[i] + encode(code.substr(pos1, pos2 - pos1)) + blkSuff[i];
       flag = 0;
       pos1 = pos2;
       pos2--;
       word = "0";
      }
      break;
     }
     if (word == "") break;
     else if (word == "0") continue;
    }
    //关键字加亮
    var w = encode(word);
    for (var i in keywords) {
     if (keywords[i].toLowerCase().indexOf(" " + word.toLowerCase() + " ") < 0) continue;
     htmlCode += kwPref[i] + w + kwSuff[i];
     word = "";
     break;
    }
    if (word != "") htmlCode += w;
   }
   flag = delim.indexOf(ch) < 0 ? 0 : ch.match(/s/g) ? 1 : 2;
   pos1 = pos2;
  }
  src[index2] = htmlCode;
 }
 src.splice(index2, src.length);
 return defPref + src.join("/n") + defSuff;
}
//--------------------------------------------------------------
function FCHtmlEncode(str) {
 return str.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
}
//**************加入到收藏夹ff,ie,opera
function addBookmark(title,url)
{
    if (window.sidebar)
    {
        window.sidebar.addPanel(title, url,"");
    }
    else if( document.all )
    {
        window.external.AddFavorite( url, title);
    }
    else if( window.opera && window.print )
    {return true;}
}
 
 //   根据年、月返回天数  
/*
    function  GetDay(varYear,varMonth)  
  {  
          var lngDay;   
    varYear = parseInt(varYear);
    varMonth   =   parseInt(varMonth) ; 
   
          switch   (varMonth)   {  
          case   1   :  
          case   3   :  
          case   5   :  
          case   7   :  
          case   8   :  
          case   10   :  
          case   12   :  
                  lngDay   =   31 ; 
                  break   ;
          case   4   :  
          case   6   :  
          case   9   :  
          case   11   :  
                  lngDay   =   30 ; 
                  break   ;
          case   2   :  
                  if   ((varYear   %   4   ==   0   &&   varYear   %   100   !=   0)   ||   (varYear   %   400   ==   0))  
                          lngDay   =   29  ;
                  else  
                          lngDay   =   28   ;
                  break  
          }   //   switch  
   
   
          return   lngDay  ;
  }
  */

 //or 根据年、月返回天数  
/*
  function getYearMonthDayNum(year,month)
 {
  var dayNum = [31,28,31,30,31,30,31,31,30,31,30,31];
  if(new Date(year,1,29).getDate()==29)
   {
  dayNum[1] = 29;
   }
  return dayNum[month-1];
 }
 */
//   日期是否正确  
  /*
  function CheckDate(obj)  
  {  
   var strDate,arrDate;
   var lngYear,lngMonth,lngDay;
   var strReg;
   var strError;    
   strError = "" ; 
   strReg = /^/d{4}-/d{2}-/d{2}$/;
   strDate = obj.value;
   arrDate = strDate.split("-");
   if (strReg.test(strDate))  
    {  
    lngYear = parseInt(arrDate[0],10);
    lngMonth = parseInt(arrDate[1],10); 
    lngDay = parseInt(arrDate[2], 10);   
    // alert(lngYear   +   ","   +   lngMonth   +   ","   +   lngDay)  
    // return  
    }      
   if (!strReg.test(strDate))
   {  
   strError = "格式错误!/n正确格式: yyyy-mm-dd";
   }  
   else if(lngMonth<1||lngMonth>12)
   {  
   strError = "月份应在01-12之间!"  
   }  
   else if (lngDay<1||lngDay>GetDay(lngYear,lngMonth))
    {  
   strError = "天数应在01-"+ GetDay(lngYear,lngMonth)+"之间!";  
    }      
   if (strError != "")
    {  
    alert(strError);  
    obj.select() ;
    obj.focus(); 
    }  
  }
  */
//查找网页内宽度太大的图片进行缩放以及PNG纠正
 function ReImgSize(){
  for (i=0;i<document.images.length;i++)
   {
   if (document.all){
 if (document.images[i].width>500)
  {
       document.images[i].width="500"
       document.images[i].outerHTML='<a href="'+document.images[i].src+'" target="_blank" title="在新窗口打开图片">'+document.images[i].outerHTML+'</a>'
    }
   }
  else{
 if (document.images[i].width>400) {
   document.images[i].title="在新窗口打开图片"
   document.images[i].style.cursor="pointer"
   document.images[i].onclick=function(e){window.open(this.src)}
 }
  }
  }
 }
 //引用js/css文件;
function include(path,type,title){
 var s,i,t;
 if(arguments.length < 1){
  return ;
 }
 if(arguments.length == 1){
  type = "js";
 }
 switch(type.toLowerCase()){
  case "css":
    t = document.getElementsByTagName("link");
    for(i=0;i<t.length;i++){
     if(t[i].href && t[i].href.indexOf(path)!=-1){
      return;
     }
    }
    s=document.createElement("link");
    s.rel="alternate stylesheet";
    s.type="text/css";
    s.href=path;
    s.title=title;
    s.disabled=false;
    break;
  case "js":
  case "javascript":
  default:
    t = document.getElementsByTagName("script");
    for(i=0;i<t.length;i++){
     if(t[i].src && t[i].src.indexOf(path)!=-1){
      return;
     }
    }
    s=document.createElement("script");
    s.type="text/javascript";
    s.src=path;
   break;
 }
 var h=document.getElementsByTagName("head")[0];
 h.appendChild(s);
}
//AccessKey 转换For IE Design By PuterJam
  var NKey=new Array()
  var KeyCode=new Array()
  var KeyInit=false
//======== keyCode ============
  KeyCode["1"]=49
  KeyCode["2"]=50
  KeyCode["3"]=51
  KeyCode["["]=219
  KeyCode["]"]=221
  KeyCode[","]=188
  KeyCode["."]=190
  var EKey="abcdefghijklmnopqrstuwvxyz"
  for (i=0;i<26;i++){
    KeyCode[EKey.substr(i,1)]=65+i
  }
 
  function PressKey(){
  if (document.all) {
    for (i=0;i<NKey.length;i++){
     if (window.event.altKey && window.event.keyCode==NKey[i].Code) {NKey[i].Object.blur();NKey[i].Object.click()}
    }

 }
  }
 
  function AccessKey(Code,Object){
   this.Code=Code
   this.Object=Object
  }


  function initAccessKey(){
  if (document.all && !KeyInit) {
     for (i=0;i<document.links.length;i++){
       if (document.links[i].accessKey) {
         NKey[NKey.length]=new AccessKey(KeyCode[document.links[i].accessKey.toLowerCase()],document.links[i])
       }
     }
  }
  KeyInit=true
  }

//初始化JS代码
function initJS(){
 ReImgSize(); //自动缩放代码
 initAccessKey();  //转换AccessKey For IE
}
//让Mozilla支持innerText
try{
 HTMLElement.prototype.__defineGetter__
 (
 "innerText",
 function ()
 {
  var anyString = "";

  var childS = this.childNodes;
   for(var i=0; i<childS.length; i++)
   {
    if(childS[i].nodeType==1)
    anyString += childS[i].tagName=="BR" ? '/n' : childS[i].innerText;
    else if(childS[i].nodeType==3)
    anyString += childS[i].nodeValue;
   }
   return anyString;
 }
 );
}
catch(e){}

//判断是否是IE
function isIE(){
 if (navigator.appName!="Microsoft Internet Explorer") {return false}
 return true
}
//显示隐藏主题
function TopicShow(e,TopicID){
  e.className=(e.className=="BttnC")?"BttnE":"BttnC"
  document.getElementById(TopicID).style.display=(e.className=="BttnC")?"":"none"
  ReImgSize()
}
//打开新窗口
function popnew(url,title,width,height){
    var w = 1024;
    var h = 768;

    if (document.all || document.layers){
        w = screen.availWidth;
        h = screen.availHeight;
    }

    var leftPos = (w/2-width/2);
    var topPos = (h/2.3-height/2.3);

    window.open(url,title,"width="+width+",height="+height+",top="+topPos+",left="+leftPos+",scrollbars=no,resizable=no,status=no")
}
//运行代码
function runEx(cod1)  {
  cod=document.getElementById(cod1)
   var code=cod.value;
   if (code!=""){
    var newwin=window.open('','',''); 
    newwin.opener = null
    newwin.document.write(code); 
    newwin.document.close();
 }
}
//复制代码
function doCopy(ID) {
 if (document.all){
   textRange = document.getElementById(ID).createTextRange();
   textRange.execCommand("Copy");
 }
 else{
   alert("此功能只能在IE上有效")
 }
}
var MediaTemp=new Array()
function MediaShow(strType,strID,strURL,intWidth,intHeight)
{
 var tmpstr
 if (MediaTemp[strID]==undefined) MediaTemp[strID]=false; else MediaTemp[strID]=!MediaTemp[strID];
 if(MediaTemp[strID]){
   if ( document.all ) {
           document.getElementById(strID).outerHTML = '<div id="'+strID+'"></div>'
   }
   else
   {
           document.getElementById(strID).innerHTML = ''
   }

  document.images[strID+"_img"].src="images/mm_snd.gif"   
  document.getElementById(strID+"_text").innerHTML="在线播放" 
 }else{
  document.images[strID+"_img"].src="images/mm_snd_stop.gif"   
  document.getElementById(strID+"_text").innerHTML="关闭在线播放"
  switch(strType){
   case "swf":
    tmpstr='<div style="height:6px;overflow:hidden"></div><object codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="'+intWidth+'" height="'+intHeight+'"><param name="movie" value="'+strURL+'" /><param name="quality" value="high" /><param name="AllowScriptAccess" value="never" /><embed src="'+strURL+'" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="'+intWidth+'" height="'+intHeight+'" /></object>';
    break;
   case "wma":
    tmpstr='<div style="height:6px;overflow:hidden"></div><object classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95"  id="MediaPlayer" width="450" height="70"><param name=""howStatusBar" value="-1"><param name="AutoStart" value="False"><param name="Filename" value="'+strURL+'"></object>';
    break;
   case "wmv":
    tmpstr='<div style="height:6px;overflow:hidden"></div><object classid="clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,0,02,902" type="application/x-oleobject" standby="Loading..." width="'+intWidth+'" height="'+intHeight+'"><param name="FileName" VALUE="'+strURL+'" /><param name="ShowStatusBar" value="-1" /><param name="AutoStart" value="true" /><embed type="application/x-mplayer2" pluginspage="http://www.microsoft.com/Windows/MediaPlayer/" src="'+strURL+'" autostart="true" width="'+intWidth+'" height="'+intHeight+'" /></object>';
    break;
   case "rm":
    tmpstr='<div style="height:6px;overflow:hidden"></div><object classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" width="'+intWidth+'" height="'+intHeight+'"><param name="SRC" value="'+strURL+'" /><param name="CONTROLS" VALUE="ImageWindow" /><param name="CONSOLE" value="one" /><param name="AUTOSTART" value="true" /><embed src="'+strURL+'" nojava="true" controls="ImageWindow" console="one" width="'+intWidth+'" height="'+intHeight+'"></object>'+
                '<br/><object classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" width="'+intWidth+'" height="32" /><param name="CONTROLS" value="StatusBar" /><param name="AUTOSTART" value="true" /><param name="CONSOLE" value="one" /><embed src="'+strURL+'" nojava="true" controls="StatusBar" console="one" width="'+intWidth+'" height="24" /></object>'+'<br /><object classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" width="'+intWidth+'" height="32" /><param name="CONTROLS" value="ControlPanel" /><param name="AUTOSTART" value="true" /><param name="CONSOLE" value="one" /><embed src="'+strURL+'" nojava="true" controls="ControlPanel" console="one" width="'+intWidth+'" height="24" autostart="true" loop="false" /></object>';
    break;
   case "ra":
    tmpstr='<div style="height:6px;overflow:hidden"></div><object classid="clsid:CFCDAA03-8BE4-11CF-B84B-0020AFBBCCFA" id="RAOCX" width="450" height="60"><param name="_ExtentX" value="6694"><param name="_ExtentY" value="1588"><param name="AUTOSTART" value="true"><param name="SHUFFLE" value="0"><param name="PREFETCH" value="0"><param name="NOLABELS" value="0"><param name="SRC" value="'+strURL+'"><param name="CONTROLS" value="StatusBar,ControlPanel"><param name="LOOP" value="0"><param name="NUMLOOP" value="0"><param name="CENTER" value="0"><param name="MAINTAINASPECT" value="0"><param name="BACKGROUNDCOLOR" value="#000000"><embed src="'+strURL+'" width="450" autostart="true" height="60"></embed></object>';
    break;
   case "qt":
    tmpstr='<div style="height:6px;overflow:hidden"></div><embed src="'+strURL+'" autoplay="true" loop="false" controller="true" playeveryframe="false" cache="false" scale="TOFIT" bgcolor="#000000" kioskmode="false" targetcache="false" pluginspage="http://www.apple.com/quicktime/" />';
  }
  document.getElementById(strID).innerHTML = tmpstr;
 }
  document.getElementById(strID+"_href").blur()
}
function hideObject(objectId)
{
 var obj=getObject(objectId);
    
 if(obj&&obj.style)
 {
  obj.style.display="none";     
  return true
 }
 return false
}

function showObject(objectId)
{
 var obj=getObject(objectId);
 if(obj&&obj.style)
 {
  obj.style.display="";
  return true
 }
 return false
}
// 增加一个名为 trim 的函数作为
// String 构造函数的原型对象的一个方法。
String.prototype.trim = function() {
 return this.replace(/(^/s*)|(/s*$)/g, "");   // 用正则表达式将前后空格
}
/*
eg:
var s = "    leading and trailing spaces    "; // 有空格的字符串
window.alert(s + "(" + s.length + ")");
s = s.trim();                                  // 删除前后空格
window.alert(s + "(" + s.length + ")");
*/

//字符处理;
//去左右空格;
function trim(s){
  return rtrim(ltrim(s));
}
//去左空格;
function ltrim(s){
  return s.replace( /^/s*/, "");
}
//去右空格;
function rtrim(s){
  return s.replace( //s*$/, "");
}
//验证信息;
//空字符值;
function isEmpty(s){
 s = trim(s);
 return s.length == 0;
}


function Trim(TRIM_VALUE){
 if(TRIM_VALUE.length < 1){
  return"";
 }
 TRIM_VALUE = RTrim(TRIM_VALUE);
 TRIM_VALUE = LTrim(TRIM_VALUE);
 if(TRIM_VALUE==""){
  return "";
 }
 else{
  return TRIM_VALUE;
 }
} //End Function

function RTrim(VALUE){
 var w_space = String.fromCharCode(32);
 var v_length = VALUE.length;
 var strTemp = "";
 if(v_length < 0){
  return"";
 }
 var iTemp = v_length -1;

 while(iTemp > -1){
  if(VALUE.charAt(iTemp) == w_space){
  }
  else{
   strTemp = VALUE.substring(0,iTemp +1);
   break;
  }
  iTemp = iTemp-1;

 } //End While
 return strTemp;

} //End Function

function LTrim(VALUE){
 var w_space = String.fromCharCode(32);
 if(v_length < 1){
  return"";
 }
 var v_length = VALUE.length;
 var strTemp = "";
 var iTemp = 0;

 while(iTemp < v_length){
  if(VALUE.charAt(iTemp) == w_space){
   }
   else{
    strTemp = VALUE.substring(iTemp,v_length);
    break;
  }
  iTemp = iTemp + 1;
 } //End While
 return strTemp;
} //End Function

//Email;
function isEmail(s){
 s = trim(s);
  var p = /^[_/.0-9a-z-]+@([0-9a-z][0-9a-z-]+/.){1,4}[a-z]{2,3}$/i;
  return p.test(s);
}
//数字;
function isNumber(s){
 return !isNaN(s);
}
//颜色值;
function isColor(s){
 s = trim(s);
 if (s.length !=7) return false;
 return s.search(//#[a-fA-F0-9]{6}/) != -1;
}
//手机号码;
function isMobile(s){
 s = trim(s);
 var p = /13/d{9}/;
 return p.test(s);
}
//身份证;
function isCard(s){
 s = trim(s);
 var p = /^/d{15}(/d{2}[xX0-9])?$/;
 return p.test(s);
}
//URL;
function isURL(s){
 s = trim(s).toLowerCase();
 var p = /^http:////[A-Za-z0-9]+/.[A-Za-z0-9]+[//=/?%/-&_~`@[/]/':+!]*([^<>/"/"])*$/;
 return p.test(s);
}
//Phone;
function isPhone(s){
 s = trim(s);
 var p = /^((/(/d{3}/))|(/d{3}/-))?(/(0/d{2,3}/)|0/d{2,3}-)?[1-9]/d{6,7}$/;
 return p.test(s);
}
//Zip;
function isZip(s){
 s = trim(s);
 var p = /^[1-9]/d{5}$/;
 return p.test(s);
}
//Double;
function isDouble(s){
 s = trim(s);
 var p = /^[-/+]?/d+(/./d+)?$/;
 return p.test(s);
}
//Integer;
function isInteger(s){
 s = trim(s);
 var p = /^[-/+]?/d+$/;
 return p.test(s);
}
//English;
function isEnglish(s){
 s = trim(s);
 var p = /^[A-Za-z]+$/;
 return p.test(s);
}
//中文;
function isChinese(s){
 s = trim(s);
 var p = /^[/u0391-/uFFE5]+$/;
 return p.test(s);
}
//双字节
function isDoubleChar(s){
 var p = /^[^/x00-/xff]+$/;
 return p.test(s);
}
//含有中文字符
function hasChineseChar(s){
 var p = /[^/x00-/xff]/;
 return p.test(s);
}
function hasAccountChar(s){
 var p = /^[a-zA-Z0-9][a-zA-Z0-9_-]{0,15}$/;
 return p.test(s);
}
function limitLen(s,Min,Max){
 s=trim(s);
 if(s=="") return false;
 if((s.length<Min)||(s.length>Max))
  return false;
 else
  return true;
}
//功能;
//延时事件;
function setDeferEvent(type,action,time){
 if (trim(time).length == 0) time = 1;
 if (typeof(time)!="number") time = 1;
 
 switch(type.toLowerCase()){
  case "go":
   window.setTimeout("window.location='"+ action +"'",time);
   break;
  case "alert":
   window.setTimeout("alert('"+ action +"')",time);
   break;
  case "js":
  case "javascript":
   window.setTimeout("'"+ action.toString() +"'",time);
   break;
  default:
   alert("Nothing will do!");
   break
 }  
}
function addLoadListener(handler){
 if (typeof window.addEventListener != 'undefined')
  window.addEventListener('load', handler, false);
 else if (typeof document.addEventListener != 'undefined')
  document.addEventListener('load', handler, false);
 else if (typeof window.attachEvent != 'undefined')
  window.attachEvent('onload', handler);
};
function addEventListener(element, eventType, handler, capture)
{
 try
 {
  if (element.addEventListener)
   element.addEventListener(eventType, handler, capture);
  else if (element.attachEvent)
   element.attachEvent("on" + eventType, handler);
 }
 catch (e) {}
};

function removeEventListener(element, eventType, handler, capture)
{
 try
 {
  if (element.removeEventListener)
   element.removeEventListener(eventType, handler, capture);
  else if (element.detachEvent)
   element.detachEvent("on" + eventType, handler);
 }
 catch (e) {}
};
//Image;
function preloadImages(){
 var d = document;
 if(d.images){
  if(!d.p_i_a) d.p_i_a = new Array();
  var i,j=d.p_i_a.length,a=arguments;
  for(i=0;i<a.length;i++){
   d.p_i_a[j]= new Image();
   d.p_i_a[j++].src = a[i];
  }
 }
}
//Ajax功能;
function loadAjaxElement(e,u,p,f,l){
 if(arguments.length < 3){
  return ;
 }
 o = $(e);
 o.innerHTML = l;
 p = $H(p).toQueryString();
 new Ajax.Updater(     
                    {success: e},
                    u,
                    {method: 'get', parameters: p, onFailure: f});
}
function loadAjaxData(u,p,s,f){
 if(arguments.length < 3){
  return ;
 }
 p = $H(p).toQueryString();
 new Ajax.Request(     
                    u,
                    {method: 'get', parameters: p, onSuccess:s,onFailure: f});
}
function sendAjaxElement(e,u,p,f,l){
 if(arguments.length < 3){
  return ;
 }
 o = $(e);
 o.innerHTML = l;
 p = $H(p).toQueryString();
 new Ajax.Updater(     
                    {success: e},
                    u,
                    {method: 'post', parameters: p, onFailure: f});
}
function sendAjaxData(u,p,s,f){
 if(arguments.length < 3){
  return ;
 }
 p = $H(p).toQueryString();
 new Ajax.Request(     
                    u,
                    {method: 'post', parameters: p, onSuccess:s,onFailure: f});
}

 

 

function CheckPost(){
  try{
 if (Trim(document.forms[0].title.value)=="") {
   alert("标题不能为空,请写日志标题!")
   document.forms[0].title.focus()
   return false
  }
 }
  catch(e){}

  try{
    if (document.getElementById("P2").checked) {
     if (!CheckDate(document.forms[0].PubTime.value)){
        alert("日期格式不正确!/n格式:yyyy-mm-dd hh:mm:ss") 
     return false
     }
     else
     {
      document.forms[0].PubTime.value=CheckDate(document.forms[0].PubTime.value)
     }
    }
  }
  catch(e){}

  try{
   if (GetMessageLength()==0){
   alert("内容不能为空!")
   return false
   }
  }
  catch(e){
 if (Trim(document.forms[0].Message.value)=="") {
   alert("内容不能为空!")
   document.forms[0].Message.focus()
   return false
 }
  }
   try{document.forms[0].SaveArticle.disabled=true}catch(e){}
   try{document.forms[0].SaveDraft.disabled=true}catch(e){}
   try{document.forms[0].ReturnButton.disabled=true}catch(e){}
   try{document.forms[0].CancelEdit.disabled=true}catch(e){e}
   try{document.forms[0].DelArticle.disabled=true}catch(e){}
return true
}

   function CheckDate(str){
        var reg = /^(/d{1,4})(-|//)(/d{1,2})/2(/d{1,2}) (/d{1,2}):(/d{1,2}):(/d{1,2})$/;
        var r = str.match(reg);
        if(r==null)return false;
        var d= new Date(r[1],r[3]-1,r[4],r[5],r[6],r[7]);
        return (d.getFullYear()+"-"+(d.getMonth()+1)+"-"+d.getDate()+" "+d.getHours()+":"+d.getMinutes()+":"+d.getSeconds());
   }


function GetMessageLength()
{
 var oEditor = FCKeditorAPI.GetInstance('Message') ;
 var oDOM = oEditor.EditorDocument ;
 var iLength ;

 if ( document.all )  // If Internet Explorer.
 {
  iLength = oDOM.body.innerText.length ;
 }
 else     // If Gecko.
 {
  var r = oDOM.createRange() ;
  r.selectNodeContents( oDOM.body ) ;
  iLength = r.toString().length ;
 }
// oEditor.InsertHtml('')
return iLength

function SetFont(size){
 document.getElementById("logPanel").style.fontSize=size
}
//引用
function addQuote(usr,content){
 try{
 if (document.getElementById("editorbody").style.display=="none") showUBB("Message");
    document.forms["frm"].Message.value="[quote="+usr+"]"+document.getElementById(content).innerText+"[/quote]"
 document.forms["frm"].Message.focus();
 }catch(e){}
}

//插入上传附件
function addUploadItem(type,path,memberDown){
 var EditType=""
 try{
   var oEditor = parent.FCKeditorAPI.GetInstance('Message')
   EditType="FCkEditor"
   var hrefLen=location.href.lastIndexOf("/")
      var Fhref=location.href.substr(0,hrefLen+1)
      path=Fhref+path
 }
 catch(e){
   EditType="UBBEditor"
 }
 type=type.toLowerCase()
   switch(type){
    case 'gif':
        if (EditType=="UBBEditor"){parent.document.forms[0].Message.value+='[img]'+path+'[/img]/n'}
        else{oEditor.InsertHtml('<img src="'+path+'" alt=""/>')}
     break;
    case 'jpg':
        if (EditType=="UBBEditor"){parent.document.forms[0].Message.value+='[img]'+path+'[/img]/n'}
        else{oEditor.InsertHtml('<img src="'+path+'" alt=""/>')}
     break;
    case 'png':
        if (EditType=="UBBEditor"){parent.document.forms[0].Message.value+='[img]'+path+'[/img]/n'}
        else{oEditor.InsertHtml('<img src="'+path+'" alt=""/>')}
     break;
    case 'bmp':
        if (EditType=="UBBEditor"){parent.document.forms[0].Message.value+='[img]'+path+'[/img]/n'}
        else{oEditor.InsertHtml('<img src="'+path+'" alt=""/>')}
     break;
    case 'jpeg':
        if (EditType=="UBBEditor"){parent.document.forms[0].Message.value+='[img]'+path+'[/img]/n'}
        else{oEditor.InsertHtml('<img src="'+path+'" alt=""/>')}
     break;
    case 'mp3':
        if (EditType=="UBBEditor"){parent.document.forms[0].Message.value+='[wma]'+path+'[/wma]/n'}
        else{oEditor.InsertHtml('<object classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95"  id="MediaPlayer" width="450" height="70"><param name=""howStatusBar" value="-1"><param name="AutoStart" value="False"><param name="Filename" value="'+path+'"></object>')}
     break;
    case 'wma':
        if (EditType=="UBBEditor"){parent.document.forms[0].Message.value+='[wma]'+path+'[/wma]/n'}
        else{oEditor.InsertHtml('<object classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95"  id="MediaPlayer" width="450" height="70"><param name=""howStatusBar" value="-1"><param name="AutoStart" value="False"><param name="Filename" value="'+path+'"></object>')}
     break;
    case 'rm':
        if (EditType=="UBBEditor"){parent.document.forms[0].Message.value+='[rm]'+path+'[/rm]/n'}
        else{oEditor.InsertHtml('<object classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" width="400" height="300"><param name="SRC" value="'+path+'" /><param name="CONTROLS" VALUE="ImageWindow" /><param name="CONSOLE" value="one" /><param name="AUTOSTART" value="true" /><embed src="'+path+'" nojava="true" controls="ImageWindow" console="one" width="400" height="300"></object><br/><object classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" width="400" height="32" /><param name="CONTROLS" value="StatusBar" /><param name="AUTOSTART" value="true" /><param name="CONSOLE" value="one" /><embed src="'+path+'" nojava="true" controls="StatusBar" console="one" width="400" height="24" /></object><br/><object classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" width="400" height="32" /><param name="CONTROLS" value="ControlPanel" /><param name="AUTOSTART" value="true" /><param name="CONSOLE" value="one" /><embed src="'+path+'" nojava="true" controls="ControlPanel" console="one" width="400" height="24" autostart="true" loop="false" /></object>')}
     break;
    case 'rmvb':
        if (EditType=="UBBEditor"){parent.document.forms[0].Message.value+='[rm]'+path+'[/rm]/n'}
        else{oEditor.InsertHtml('<object classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" width="400" height="300"><param name="SRC" value="'+path+'" /><param name="CONTROLS" VALUE="ImageWindow" /><param name="CONSOLE" value="one" /><param name="AUTOSTART" value="true" /><embed src="'+path+'" nojava="true" controls="ImageWindow" console="one" width="400" height="300"></object><br/><object classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" width="400" height="32" /><param name="CONTROLS" value="StatusBar" /><param name="AUTOSTART" value="true" /><param name="CONSOLE" value="one" /><embed src="'+path+'" nojava="true" controls="StatusBar" console="one" width="400" height="24" /></object><br/><object classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA" width="400" height="32" /><param name="CONTROLS" value="ControlPanel" /><param name="AUTOSTART" value="true" /><param name="CONSOLE" value="one" /><embed src="'+path+'" nojava="true" controls="ControlPanel" console="one" width="400" height="24" autostart="true" loop="false" /></object>')}
     break;
    case 'ra':
        if (EditType=="UBBEditor"){parent.document.forms[0].Message.value+='[ra]'+path+'[/ra]/n'}
        else{oEditor.InsertHtml('<object classid="clsid:CFCDAA03-8BE4-11CF-B84B-0020AFBBCCFA" id="RAOCX" width="450" height="60"><param name="_ExtentX" value="6694"><param name="_ExtentY" value="1588"><param name="AUTOSTART" value="true"><param name="SHUFFLE" value="0"><param name="PREFETCH" value="0"><param name="NOLABELS" value="0"><param name="SRC" value="'+path+'"><param name="CONTROLS" value="StatusBar,ControlPanel"><param name="LOOP" value="0"><param name="NUMLOOP" value="0"><param name="CENTER" value="0"><param name="MAINTAINASPECT" value="0"><param name="BACKGROUNDCOLOR" value="#000000"><embed src="'+path+'" width="450" autostart="true" height="60"></embed></object>')}
     break;
    case 'asf':
        if (EditType=="UBBEditor"){parent.document.forms[0].Message.value+='[wmv]'+path+'[/wmv]/n'}
        else{oEditor.InsertHtml('<object classid="clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,0,02,902" type="application/x-oleobject" standby="Loading..." width="400" height="300"><param name="FileName" VALUE="'+path+'" /><param name="ShowStatusBar" value="-1" /><param name="AutoStart" value="true" /><embed type="application/x-mplayer2" pluginspage="http://www.microsoft.com/Windows/MediaPlayer/" src="'+path+'" autostart="true" width="400" height="300" /></object>')}
     break;
    case 'avi':
        if (EditType=="UBBEditor"){parent.document.forms[0].Message.value+='[wmv]'+path+'[/wmv]/n'}
        else{oEditor.InsertHtml('<object classid="clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,0,02,902" type="application/x-oleobject" standby="Loading..." width="400" height="300"><param name="FileName" VALUE="'+path+'" /><param name="ShowStatusBar" value="-1" /><param name="AutoStart" value="true" /><embed type="application/x-mplayer2" pluginspage="http://www.microsoft.com/Windows/MediaPlayer/" src="'+path+'" autostart="true" width="400" height="300" /></object>')}
     break;
    case 'wmv':
        if (EditType=="UBBEditor"){parent.document.forms[0].Message.value+='[wmv]'+path+'[/wmv]/n'}
        else{oEditor.InsertHtml('<object classid="clsid:22D6F312-B0F6-11D0-94AB-0080C74C7E95" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,0,02,902" type="application/x-oleobject" standby="Loading..." width="400" height="300"><param name="FileName" VALUE="'+path+'" /><param name="ShowStatusBar" value="-1" /><param name="AutoStart" value="true" /><embed type="application/x-mplayer2" pluginspage="http://www.microsoft.com/Windows/MediaPlayer/" src="'+path+'" autostart="true" width="400" height="300" /></object>')}
     break;
    case 'swf':
        if (EditType=="UBBEditor"){parent.document.forms[0].Message.value+='[swf]'+path+'[/swf]/n'}
        else{oEditor.InsertHtml('<object codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="400" height="300"><param name="movie" value="'+path+'" /><param name="quality" value="high" /><param name="AllowScriptAccess" value="never" /><embed src="'+path+'" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="400" height="300" /></object>')}
     break;
    default :
        if (EditType=="UBBEditor"){
        if (memberDown==1)
          {parent.document.forms[0].Message.value+='[mDown='+path+']点击下载此文件[/mDown]/n'}
         else
          {parent.document.forms[0].Message.value+='[down='+path+']点击下载此文件[/down]/n'}
        }
        else{oEditor.InsertHtml('<a href="'+path+'"><img border="0" src="../../images/download.gif" alt="" style="margin:0px 2px -4px 0px"/>点击下载此文件</a>')}
        break;
     }
}
//写入顶部Flash文件
function WriteHeadFlash(Path,Width,Height,Transparent){
  var Temp,T=""
  Temp='<object classid="clsid:D27CDB6E-AE6D-11CF-96B8-444553540000" id="FlashH" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" border="0" width="'+Width+'" height="'+Height+'">'
  Temp+='<param name="movie" value="'+Path+'"/>'
  Temp+='<param name="quality" value="High"/>'
  Temp+='<param name="scale" value="ExactFit"/>'
  if (Transparent) {Temp+=' <param name="wmode" value="transparent"/>';T='wmode="transparent"'}
  Temp+='<embed src="'+Path+'" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" name="FlashH" width="'+Width+'" height="'+Height+'" quality="High"'+T+' scale="ExactFit"/>'
  Temp+='</object>'
  document.getElementById("FlashHead").innerHTML=Temp

### 回答1: 在web开发中,JavaScript是一种常用的客户端脚本语言。而common.js则是一种用于node.js的模块系统,用于管理JavaScript应用的依赖关系。 当我们在开发node.js项目时,经常会使用到各种各样的库和框架。为了更好地管理应用的依赖关系,我们需要使用common.js模块系统。 common.js模块系统通过提供require函数,使得我们可以方便地引入其他模块的代码。在引入其他模块时,我们可以指定相对路径或者是模块名。 同时,common.js还提供了exports对象,允许我们将模块的部分代码暴露给外部使用。通过这种方式,我们可以实现JavaScript代码的模块化,提高代码的复用性和可维护性。 当我们需要使用common.js模块系统时,通常需要下载和引入common.js库。常见的方式是通过npm安装common.js库,或者是直接下载common.jsjs文件。 总之,common.js模块系统是非常重要的一种工具,可以帮助我们更好地管理JavaScript应用的依赖关系,提高代码的可维护性和复用性。 ### 回答2: Common.js是一种用于Javascript编程的模块化系统。它允许开发人员将Javascript代码划分成不同的模块,从而使代码更加易于维护和重用。 Common.js提供了一个标准化的接口,使得模块可以被其他模块所调用。它通过使用require和module.exports关键字,使得模块之间的依赖关系得以明确定义。 要下载Common.js,可以在浏览器中搜索“Common.js下载”,可以找到一些在Github上的链接,如Common.js和Browserify。这些链接提供了Common.js的源代码和文档,以及一个命令行界面,用来构建和管理应用程序中的模块依赖关系。 除了通过Github下载Common.js外,大多数现代浏览器都已经内置了Common.js的支持。因此,在使用Common.js时,开发人员可以直接使用内置的支持,而无需单独下载框架。 总之,Common.js是一种非常有用的模块化系统,它可以帮助开发人员更加高效地组织和管理Javascript代码。无论是通过Github下载源代码,还是通过内置支持,Common.js都是制作高质量Javascript应用程序的有力工具。 ### 回答3: common.js 是 Node.js常用的模块系统,也能在浏览器中使用。它提供了模块化开发的标准,使开发人员可以将代码分割成多个模块,并独立地引入和使用,增强了代码的可维护性和可重用性。 在浏览器中使用 common.js,需要先将模块打包成一个文件,然后使用 script 标签引入。通常使用打包工具如 Webpack 或 Browserify,将所有依赖的模块打包成一个单独的文件,如 bundle.js。在 HTML 文件中引入这个文件即可使用其中的模块。 下载 common.js 可以通过多种途径,例如在 Node.js 中可以使用 npm 命令安装,或在浏览器中通过 CDN 下载。使用 npm 安装 common.js 可以在命令行中运行 npm install commonjs 命令,然后在代码中使用 require() 函数引入模块。在浏览器中,可以在 HTML 中通过 script 标签引入 CDN 中的 common.js 文件。 总之,common.js 是一个十分重要的模块系统,为前后端开发提供了一个标准,使代码更加易于维护和重用。通过合适的打包工具和下载方式,我们能够方便地使用 common.js 进行模块化开发。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

rjzou2006

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值