/* =================== /* Program : Ajax Commucator Version : 1.7 Author : Neil Yuming Kuo @ Jaby Group [http://jaby.heyxu.com] Website : http://match.heyxu.com/user/neil or http://neil.heyxu.com Email : neilbaby.k at gmail.com /* =================== */ // Browser Functions ===== // // convert click to dblclick under firefox /*var FirefoxDblclick = [];*/ /*function jaby_FirefoxDblclicker(id,pos){var time=new Date().getTime();var found=-1;for(l=0;l=io.length-1)return 0;jaby_HtmlSelectSwapNode(io,io.selectedIndex,io.selectedIndex+1);} function jaby_FormSelectInsertAndSelect(io,txt,val){var oOption = document.createElement('option');oOption.value = val;oOption.text = txt;jaby_ElementAddChild(io,oOption);io[io.length-1].selected=true;} function jaby_FormSelectInsert(io,txt,val){return jaby_HtmlSelectInsert(io,txt,val);} function jaby_execInnerScript(innerhtml){ alert('jaby_execInnerScript'); var temp=innerhtml.replace(/\n|\r/g,""); var regex=//gi; var arr=temp.match(regex); alert(arr); if(arr){ for(var l=0;l(.+)<\/script>$","gi"); reg.test(temp1); eval(RegExp.$2); } } } function d2h(d) {return d.toString(16);} function h2d(h) {return parseInt(h,16);} function d2b(d) {return d.toString(2);} // eMail Checker function jaby_emailverify(mail){ var re = /^[0-9a-z][\w.-]+@\w[\w.-]+\.[\w.-]*[a-z][a-z]$/i; return re.test(mail); } // Round a string(ex '12.34567') to some decimal places(ex 3) function roundp(v, dp) { //var v = String(v); var v = v+''; var dotpos; // position of decimal point var ary = new Array(); // Make sure it has a dot if ( v.indexOf('.') == -1 ) v += '.'; dotpos = v.indexOf("."); // Convert string to Array for (var i = 0 ; i < v.length ; i++) ary[i] = v.charAt(i); // Append trailing zero if the string is too short var temp = dotpos + dp - v.length + 1; for (var i = 0 ; i <= temp ; i++) ary[ary.length] = '0'; // Check if carry is needed after rounding var carry_flag = false; if ( ary[dotpos + dp + 1] >= 5 ) carry_flag = true; // Do carry for other digit for (var i = dotpos + dp ; i >= 0 && carry_flag ; i--) { // Skip the dot and pocess the next digit if (ary[i] == '.') continue; if (ary[i] != '9') { ary[i]++; carry_flag = false; } else { // 9 + 1 = 10 ary[i] = '0'; carry_flag = true; } } // Check if a new digit is needed after carry v = (carry_flag)? '1' : ''; // Chop the last digit ary.length = dotpos + dp + 1; // Chop the dot if no decimal place if (dp == 0) ary.length--; // Convert array into string for (var i = 0 ; i < ary.length ; i++) v = v + ary[i]; return v; } function jaby_br2nl(str){ return str.replace(/
/g,"\n"); } // Array Search function array_search(ia,val){ for(var l=0;l]*>/g,""); // } // Strip any Html Tags from a string function jaby_StripHtmlTags(oldString) { var newString = ""; var inTag = false; for(var i = 0; i < oldString.length; i++) { if(oldString.charAt(i) == '<') inTag = true; if(oldString.charAt(i) == '>'){ if(oldString.charAt(i+1)=="<"){ /*dont do anything*/} else{inTag = false;i++;} } if(!inTag) newString += oldString.charAt(i); } return newString; } // Find String from Page(win = this) //var win = this; function FineInPage(win,str){ alert('FineInPage'); return 0; var n = 0; var NS4 = (document.layers); var IE4 = (document.all); var txt, i, found; if (str == "")return false; if (NS4){ if (!win.find(str))while(win.find(str, false, true))n++; else n++; if (n == 0) alert("本頁無任何【 " + str + " 】字句!"); } if (IE4){ txt = win.document.body.createTextRange(); for (i = 0; i <= n && (found = txt.findText(str)) != false; i++){ txt.moveStart("character", 1); txt.moveEnd("textedit"); } if (found){ txt.moveStart("character", -1); txt.findText(str); txt.select(); txt.scrollIntoView(); n++; } else { if (n > 0) { n = 0; findInPage(str); } else alert("本頁無任何【 " + str + " 】字句!"); } } return false; } function simulateMouseEvent(obj,iEvtParm){ var a=document.createEvent("MouseEvents"); a.initEvent(iEvtParm, true, true); obj.focus(); obj.dispatchEvent(a); } //"simulateMouseEvent(Filebox,'dblclick');". //"simulateKeyboardEvent(Filebox,'keypress','enter');". function simulateKeyboardEvent(obj,iEvtParm,ikey){ var keyCode,charCode; switch(ikey){ case 'space':charCode = 0x20; case 'enter':keyCode = 0x0D; } var a=document.createEvent("KeyboardEvent"); a.initKeyEvent(iEvtParm,false,false,null,false,false,false,false,keyCode,charCode); obj.focus(); obj.dispatchEvent(a); } /* evtObj.initKeyEvent("keypress", // in DOMString typeArg, false, // in boolean canBubbleArg, false, // in boolean cancelableArg, null, // in nsIDOMAbstractView viewArg, false, // in boolean ctrlKeyArg, false, // in boolean altKeyArg, true, // in boolean shiftKeyArg, false, // in boolean metaKeyArg, keyCode, // key code; charCode); // char code */ // website curosr function changeCursor(BodyID,AniFile){ document.all(BodyID).style.cursor = AniFile; } /* 計算混合全半形文字的長度 */ function mixed_length(iStr){ return iStr.replace(/[^\x00-\xff]/gi,'xx').length; } function jaby_Rand(iLength){ var rands = String(Math.random()*100000000000000000).substr(0,iLength); return rands; } function jaby_rand(iLength){ var rands = Math.random()*100000000000000000; return rands; } function jaby_ElementRemove(io,ione){ io.remove(ione); } // Clear form-element function jaby_ElementClear(io){ for(var l=io.length;l>0;l--){ io.remove(l); //if (window.ActiveXObject)io.remove(l); //ie //if (window.XMLHttpRequest)io.removeChild(l); //Mozilla and firefox,Safari,... } } function jaby_ElementAddChild(io,ione){ switch(io.type){ case 'select-one': switch(BrowserVer){ case 'ie5':case 'ie6':case 'ie7':io.add(ione);break; default:case 'chrome0':case 'chrome1':io.appendChild(ione);break; } break; default: switch(BrowserVer){ case 'ie5':case 'ie6':io.add(ione);break; default:case 'chrome0':case 'chrome1':case 'ie7':io.appendChild(ione);break; } break; } } function include_js(path,reload){ var scripts = document.getElementsByTagName("script"); if (!reload) for(var i=0;i");} function CopyToClipboard(){ var txtPlace= document.getElementById("copytext"); if(txtPlace){ txtPlace.select(); CopiedTxt=window.getSelection ? window.getSelection() : document.getSelection ? document.getSelection() : document.selection.createRange(); //CopiedTxt = document.selection.createRange(); /* if(copy_clip(CopiedTxt)== false){ CopiedTxt.execCommand("Copy"); }*/ if(CopiedTxt != "") { CopiedTxt.execCommand("Copy"); alert('語法複製成功!'); }else{ //copy_clip(txtPlace.value); copy_clip("copytext"); } } } // General Functions ===== // function number_format(iStr){iStr +='';var len = iStr.length;var r = '';for(var i=iStr.length-1;i>=0;i--){r = iStr.substr(i,1) + r;if(i>0 && ((iStr.length-i-1)%3)==2)r = ',' + r;}return r;} function str_pad(iSrt,iLen,iSym,iAlign){iSrt = String(iSrt);if(iSrt.length >=iLen)return iSrt;var addtext='';for(var i=(iLen-iSrt.length);i >0;i--)addtext+=iSym;switch(iAlign){case 'left':return addtext+iSrt;break;default:return iSrt+addtext;break;}} function addslashes(str){str=str.replace(/'/g,"\\\'");str=str.replace(/"/g,'\\\"');str=str.replace(/\\/g,"\\\\");str=str.replace(/\0/g,'\\0');return str;} function stripslashes(str){str=str.replace(/\\'/g,"'");str=str.replace(/\\"/g,'"');str=str.replace(/\\\\/g,"\\");str=str.replace(/\\0/g,'\0');return str;} function implode(sym,ary){if(ary==null)return 0;var str='';for(var l=0;l< ary.length;l++){str += (l>0?sym:'') + ary[l];}return str;} // FileName Checker function jaby_filenameverify(fn){var re = /[\\\/:*?"><|,]/i;return !fn.match(re);}