您好,欢迎来到12图资源库!分享精神,快乐你我!我们只是素材的搬运工!!
  • 首 页
  • 当前位置:首页 > 网站教程 > 网页设计 >
    用 onerror 获取错误信息
    时间:2016-07-10 10:03 来源: 作者: 浏览:收藏 挑错 推荐 打印

    这个东西是在线写 js 脚本的时候,用来即时查错的东西!

    也就是,当发现所编写的脚本有问题的时候会有相应的提示,并且在源代码框中高亮标示出错行,方便除错

    <HTML>
    <HEAD>
    <TITLE>Debug 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 #cccccc
    background-color: #cccccc;
    border-collapse: collapse;
    border-Color: #cccccc;
    }
    </style>
    <script language="javascript">
    // Coded by windy_sk <windy_sk@126.com> 20040205

    function reportError(msg,url,line) {
    var str = "You have found an error as below: \n\n";
    str = "Err: " msg " on line: " line;
    alert(str);
    return true;
    }

    window.onerror = reportError;


    document.onkeydown = function() {
    if(event.ctrlKey){
    switch(event.keyCode) {
    case 82: //r
    runcode();
    break;
    case 83: //s
    savecode();
    break;
    case 71: //g
    goto(prompt('Please input the line number', '1'));
    break;
    case 65: //a
    document.execCommand("SelectAll");
    break;
    case 67: //c
    document.execCommand("Copy");
    break;
    case 88: //x
    document.execCommand("Cut");
    break;
    case 86: //v
    document.execCommand("Paste");
    break;
    case 90: //z
    document.execCommand("Undo");
    break;
    case 89: //y
    document.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(/\r\n/g, '\r');
    r.findText(code);
    r.select();
    break;
    case (9) :
    if (sel.getClientRects().length > 1){
    code = sel.text;
    tmp = sel.duplicate();

    (责任编辑:12图资源库)