这个东西是在线写 js 脚本的时候,用来即时查错的东西!也就是,当发现所编写的脚本有问题的时候会有相应的提示,并且在源代码框中高亮标示出错行,方便除错!(本文来源于图老师网站,更多请访问http://m.tulaoshi.com)运行代码框<HTML<HEAD<TITLEDebug Textarea</TITLE<meta http-equiv='Content-Type' content='text/html; charset=gb2312'</HEAD<style* {font-size: 12px}body {margin: 10px; padding: 0px}table.list{cursor: default;border:1px solid #ccccccbackground-color: #cccccc;border-collapse: collapse;border-Color: #cccccc;}</style<script language="javascript"// Coded by windy_sk <windy_sk@126.com 20040205function reportError(msg,url,line) {var str = "You have found an error as below: nn";str += "Err: " + msg + " on line: " + line;alert(str);return true;}window.onerror = reportError;document.onkeydown = function() {if(event.ctrlKey){switch(event.keyCode) {case 82: //rruncode();break;case 83: //ssavecode();break;case 71: //ggoto(prompt('Please input the line number', '1'));break;case 65: //adocument.execCommand("SelectAll");break;case 67: //cdocument.execCommand("Copy");break;case 88: //xdocument.execCommand("Cut");break;case 86: //vdocument.execCommand("Paste");break;case 90: //zdocument.execCommand("Undo");break;case 89: //ydocument.execCommand("Redo");break;default:break;}event.keyCode = 0;event.returnValue = false;}return;}function show_ln(){var txt_ln = document.getElementById('txt_ln');var txt_main = document.getElementById('txt_main');txt_ln.scrollTop = txt_main.scrollTop;while(txt_ln.scrollTop != txt_main.scrollTop) {txt_ln.value += (i++) + 'n';txt_ln.scrollTop = txt_main.scrollTop;}return;}function editTab(){var code, sel, tmp, r;event.returnValue = false;sel =event.srcElement.document.selection.createRange();r = event.srcElement.createTextRange();switch (event.keyCode){case (8):if (!(sel.getClientRects().length 1)){event.returnValue = true;return;}code = sel.text;tmp = sel.duplicate();tmp.moveToPoint(r.getBoundingClientRect().left, sel.getClientRects()[0].top);if(sel.parentElement() != tmp.parentElement()) return;;sel.setEndPoint('startToStart', tmp);sel.text = sel.text.replace(/^t/gm, '');code = code.replace(/^t/gm, '').replace(/rn/g, 'r');r.findText(code);r.select();break;case (9):if (sel.getClientRects().length 1){code = sel.text;tmp = sel.duplicate();tmp.moveToPoint(r.getBoundingClientRect().left, sel.getClientRects()[0].top);if(sel.parentElement() != tmp.parentElement()) return;sel.setEndPoint('startToStart', tmp);sel.text = 't'+sel.text.replace(/rn/g, 'rt');code = code.replace(/rn/g, 'rt');r.findText(code);r.select();}else{sel.text = 't';sel.select();}breakcase (13):tmp = sel.duplicate();tmp.moveToPoint(r.getBoundingClientRect().left, sel.getClientRects()[0].top);if(sel.parentElement() != tmp.parentElement()) return;tmp.setEndPoint('endToEnd', sel);sel.text = 'rn' + tmp.text.replace(tmp.text.replace(/^[t ]+/g, ""),"");sel.select();break;default:event.returnValue = true;break;}return;}function runcode() {var str = document.getElementById("txt_main").value;var code_win = window.open('about:blank');code_win.document.open();code_win.document.writeln("<script");code_win.document.writeln("function reportError(msg,url,line){nline-=14;nvar str='You have found an error as below: \n\n';nstr+='Err: '+msg+' on line: '+(line);nalert(str);nopener.goto(line);nopener.focus();nwindow.onerror=null;nsetTimeout('self.close()',10);nreturn true;n}");code_win.document.writeln("window.onerror = reportError;");code_win.document.writeln("</script");code_win.document.writeln(str);code_win.document.close();return;}function savecode() {var str = document.getElementById("txt_main").value