华域联盟 hta code collection v0.44 hta

code collection v0.44 hta

复制代码 代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<title>code collection v0.44</title>

<meta http-equiv="Content-Type" content="text/html; charset=GB2312">

<HTA:APPLICATION 

    ID="ttyp's code collection v0.44" 

    APPLICATIONNAME="ttyp's code collection v0.44" 

    VERSION="0.1" 

    SCROLL="no" 

    INNERBORDER="no" 

    CONTEXTMENU="yes" 

    CAPTION="yes" 

    ICON="skin//cc.ico" 

    SHOWINTASKBAR="yes" 

    SINGLEINSTANCE="yes" 

    SYSMENU="yes" 

    WINDOWSTATE="normal"

    NAVIGABLE="yes"

    />

<script language="JavaScript" src="js/xml.js"></script>

<script language="JavaScript" src="js/xmlhttp.js"></script>

<SCRIPT language=JavaScript src="js/skin.js"></script>

<SCRIPT language=JavaScript src="js/progressorbar.js"></script>

<script language="JavaScript" src="js/xtree.js"></script>

<script language="JavaScript" src="js/dom.js"></script>

<script language="JavaScript" src="js/config.js"></script>

<script language="JavaScript" src="js/global.js"></script>

<script language="JavaScript" src="js/highlight.js"></script>

<script language="VbScript" src="js/ts.vbs"></script>

<script language="JavaScript" src="js/autoupdate.js"></script>

<SCRIPT language=JavaScript src="js/dmenu.js"></script>

<SCRIPT language=JavaScript src="js/output.js"></script>

<SCRIPT language=JavaScript src="js/splitbar.js"></script>

<SCRIPT language=JavaScript src="js/search.js"></script>

<SCRIPT language=JavaScript src="js/toolbar.js"></script>

<SCRIPT language=JavaScript src="js/inputfile.js"></script>

<SCRIPT language=JavaScript src="js/createlink.js"></script>

<SCRIPT language=JavaScript src="js/password.js"></script>

<SCRIPT language=JavaScript src="js/chm.js"></script>

<SCRIPT LANGUAGE="JavaScript">

var _designMode=0;

var g_prompt;

var g_window;

var doc;

<!--

function init()

{    

    //定义全局变量

    g_prompt    = new CLASS_PROMPT();

    g_window    = new CLASS_WINDOW();

    var doc        = new CLASS_XML("xml/data.xml")

    //用于直接加载时获得根接点

    var rootXml    = doc.root();

    var root    = getRootNode(rootXml);

    //dom.js

    loadChild(root,rootXml);

    doc.dispose();

    root.setup(document.getElementById("divTree"));    

    bt_newitem.onclick = function(){

        if(Global.selectedNode!=null){

            writeDate(document.frames.fraGeneral,"");

            changeModel(0);

            var o = new Node("新接点","javascript:writeCode()","fraGeneral");

            if(Global.selectedNode.childNodes.length>0&&Global.selectedNode.load==false){

                Global.selectedNode.expand();

                Global.selectedNode.load = false;

            }else{

                Global.selectedNode.load = true;

            }

            Global.selectedNode.add(o);

            o.select();

            o.edit();

            var o_xml    = new CLASS_XML("xml/data.xml");

            var n = o_xml.selectSingleNode("//*[@id=" + o.parent.key + "]");

            var q = o_xml.createElement("item");

                q.setAttribute("name","新接点");

                q.setAttribute("id",o.key);

            n.appendChild(q);

            //保存菜单文件

            o_xml.save();

            o_xml.dispose();

        }else{

            g_prompt.show("请选择要添加的接点栏目");

        }        

    }

    bt_delete.onclick = function(){

        var _o = Global.selectedNode;

        if(_o){

            if(_o.childNodes.length==0){            

                var o_xml    = new CLASS_XML("xml/data.xml");

                var    m        = o_xml.selectSingleNode("//*[@id=" + _o.key + "]");

                if(m!=null&&m.nodeName=="item"){

                    if(confirm("是否真的删除接点[" + _o.text + "]?")){

                        m.parentNode.removeChild(m);

                        o_xml.save();

                        //删除数据文件

                        deleteContent(_o.key);

                        _o.remove();

                    }

                }else{

                    g_prompt.show("根接点不能删除!");

                }

                o_xml.dispose();

            }else{

                g_prompt.show("有子接点不能删除",true);

            }

        }else{

            g_prompt.show("请选择要删除的接点");

        }

    }

    bt_save.onclick = function(){        

        var _o = Global.selectedNode;

        if(_o){        

            //获取文本

            var s = "";

            var t = _o.text;

            switch(_designMode){

                case 0:

                    s = document.frames.fraGeneral.document.documentElement.outerHTML;

                break;

                case 1:

                    s = document.getElementById("editBox").innerText;                    

                break;

                case 2:

                    s = document.frames.fraPreview.document.documentElement.outerHTML;

                default:

                break;

            }

            //保存文本(dom.js)

            if(saveContent(_o.key,t,s)){

                g_prompt.show("[" + _o.text + "]保存成功!");

            }else{

                g_prompt.show("[" + _o.text + "]保存失败!");

            }

        }else{

            g_prompt.show("请选择要保存的接点");

        }

    }

    bt_update.onclick = function(){

        var    auto = new CLASS_AUTOUPDATE("CLASS_AUTOUPDATE",g_window);

            auto.update();

    }

    /*

     *    树接点编辑事件

     */

    Node.prototype.onAfterEdit = function(e,oldText,newText){

        if(oldText!=newText){

            var _o    = Global.selectedNode;

                _o.setText(this.text);

            var o_xml = new CLASS_XML("xml/data.xml");

            var m    = o_xml.selectSingleNode("//*[@id=" + _o.key + "]");

            if(m!=null){

                m.setAttribute("name",this.text);

                m.setAttribute("password",this.password);

                //保存菜单文件

                o_xml.save();

                var data = new CLASS_XML("xml\\" + _o.key + ".xml");

                if(data.error == false){

                    var    title = data.selectSingleNode("//title");

                    if(title!=null){

                        title.setAttribute("value",this.text);

                    }

                    data.save();

                }

                data.dispose();                

            }else{

                document.title = "Error:没有找到接点" + _o.key;

            }

            o_xml.dispose();

            this.select();

        }

    }

    /*

     *    接点拖动事件

     */

    Node.prototype.onDrag = function(from,to){

        var _f = from.path+"";

        var _t = to.path+"";

        if(_f.length<_t.length&&_t.substring(0,_f.length)==_f){

            g_prompt.show("不能移动到子接点");

            return;

        }

        //处理树

        to.moveToChild(from);

        /*

         *开始移动接点

         */        

        var o_xml = new CLASS_XML("xml/data.xml");

        //处理XML

        var o_f = o_xml.selectSingleNode("//*[@id=" + from.key + "]");

        var o_t = o_xml.selectSingleNode("//*[@id=" + to.key + "]");

        o_t.appendChild(o_f);

        o_xml.save();

        o_xml.dispose();

    }

    Node.prototype.onExpand = function(n){

        var o = this;    

        if(!this.load){

            if(this.locked){

                var r = window.showModalDialog("js/password.htm",this.key,"dialogHeight:80px;dialogWidth:250px;");            

                if(typeof(r)=="undefined"||r==0){                    

                    return false;

                }else{            

                    o.locked = false;

                }

                

            }

            this.open    = 1;

            this.load    = true;

            var o_xml    = new CLASS_XML("xml/data.xml");

            var m        = o_xml.selectSingleNode("//*[@id=" + o.key + "]");

            var    f    = o.getFirstChild();            

                f.remove();

            //dom.js

            loadChild(o,m);

            o_xml.dispose();

        } 

        return true;

    }

    document.frames.fraGeneral.document.designMode = "on";

    //创建右键菜单

    var g_rightmenu = new CLASS_RIGHTMENU(document.getElementById("test"),document.getElementById("divTree"),"xml/rightmenu.xml");

    //创建分割条

    var g_splitbar    = new CLASS_SPLITBAR_HORIZON(document.getElementById("divSplit"),document.getElementById("divTree"),document.getElementById("divList"));

    var    auto    = new CLASS_AUTOUPDATE("CLASS_AUTOUPDATE",g_window);

        auto.check();

        CLASS_TOOLBAR.prototype.highlight = doHighlight;

    var g_toolbar    =  new CLASS_TOOLBAR(document.getElementById("cbHead"),document.frames.fraGeneral,g_window);

        g_toolbar.path = skinPath;

    //全局键盘事件

    document.onkeydown = function(e){

        var code,o;

        //兼容ns&ie事件

        if(!e) e = window.event;

        //兼容ns&ie按键

        code = e.which ? e.which : e.keyCode;        

        switch(code){

            case 83:

            case 115:                //ctrl+s

                if(e.ctrlKey){

                    document.getElementById("bt_save").click();

                }

                break;

            case 110:                //ctrl+n

            case 78:

                if(e.ctrlKey){

                    document.getElementById("bt_newitem").click();

                }

                break;

            case 46:                //delete

                if(e.shiftKey){

                    document.getElementById("bt_delete").click();

                }

                break;

            case 81:    //ctrl+q

            case 113:

                if(e.ctrlKey)

                {

                    changeModel(0,true);

                }

                break;

            case 87:    //ctrl+w

            case 119:

                if(e.ctrlKey)

                {

                    changeModel(1,true);

                }

                break;

            case 69:    //ctrl+e,ctrl+b

            case 101:

            case 66:

            case 98:

                if(e.ctrlKey)

                {

                    changeModel(2,true);

                }

                break;

            default:break;

        }

    }

    //开始画面

    about();

}

/*

 *    数据导入导出

 */

function odata(flag){

    var _o    = Global.selectedNode;

    if(_o){

        if(flag){                

            outData(_o);

        }else{

            inData(_o);

        }

    }else{

        g_prompt.show("请选择要操作的接点");

    }

}

/*

 *    重命名接点

 */

function editNode(){

    var _o    = Global.selectedNode;

    if(_o){

        _o.edit();

    }

}

/*

 *    转到连接

 */

function go(url){

    changeModel(2,false);

    document.getElementById("fraPreview").src = url;

}

/*

 *    写正文

 */

function writeCode(id){    

    //获得接点的文本(dom.js)

    var sid;

    if(typeof(id)=="undefined"){

        sid = Global.selectedNode.key;

        if(Global.selectedNode.locked){

            var r = window.showModalDialog("js/password.htm",Global.selectedNode.key,"dialogHeight:80px;dialogWidth:250px;");            

            if(typeof(r)=="undefined"||r==0){                

                Global.selectedNode.unselect();

                return false;

            }else{

                Global.selectedNode.locked = false;    

            }

        }

    }else{

        sid = id;

        //判断id是否是锁定的

    }

    var s= readContent(sid);

    changeModel(2,false);

    writeDate(document.frames.fraPreview,s);

    writeDate(document.frames.fraGeneral,s);

    document.getElementById("editBox").innerText = s;

}

/*

 *    关于

 */

function about(){    

    var doc    = new CLASS_XML("xml\\autoupdate.xml");

    var info= doc.selectNodes("//UpdateInfo");

    var ab    = doc.selectSingleNode("//About");

    var ns    = doc.selectSingleNode("//nextversion");

    var s    = "";

    if(doc.error==false){

        if(ab!=null){

            s += ab.childNodes[0].text;

        }

        for(var i=0;i<info.length;i++){

            //s += "<xmp>" + info[i].childNodes[0].text + "</xmp><br>";

            s += info[i].childNodes[0].text + "";

        }

        if(ns!=null){

            s += ns.childNodes[0].text;

        }        

    }else{

        s    = "读配置文件失败!";

    }

    doc.dispose();

    //切换浏览模式

    changeModel(2,false);

    //写正文

    writeDate(document.frames.fraPreview,s);

    writeDate(document.frames.fraGeneral,s);

    document.getElementById("editBox").innerText = s;

}

/*

 *    写框价数据

 */

function writeDate(fra,data){

    fra.document.close();

    fra.document.write(data);

    fra.document.close();

}

/*

 *    切换浏览模式

 */

function changeModel(n,flag){

    var _dm=parseInt(n);

    document.getElementById("Img_modelBtn").style.pixelTop=_dm*(-15);

    var d = document.getElementById("editBox");

    var g = document.getElementById("fraGeneral");

    var p = document.getElementById("fraPreview");

    var gd= document.frames.fraGeneral.document;

    var pd= document.frames.fraPreview.document;

    var c = document.getElementById("cbHead");

    switch(_dm){

        case 0:    //普通

            d.style.display = "none";

            g.style.display = "";

            p.style.display = "none";

            c.style.display = "";

            if(flag==true){

                writeDate(document.frames.fraGeneral,d.innerText);

            }

        break;

        case 1:    //HTML

            d.style.display = "";

            g.style.display = "none";

            p.style.display = "none";

            c.style.display = "none";

            if(flag==true){

                d.innerText = gd.documentElement.outerHTML;

            }

        break;

        case 2:    //浏览

            d.style.display = "none";

            g.style.display = "none";

            p.style.display = "";

            c.style.display = "none";

            if(flag==true){

                if(_designMode==0){

                    writeDate(document.frames.fraPreview,gd.documentElement.outerHTML);

                    d.innerText = gd.documentElement.outerHTML;

                }

                if(_designMode==1){

                    writeDate(document.frames.fraGeneral,d.innerText);

                    writeDate(document.frames.fraPreview,d.innerText);

                }

            }

        break;

    }

    _designMode = _dm;

}

function editTab(){

    sel    =event.srcElement.document.selection.createRange();

    switch (event.keyCode){

        case 8:

            break

        case 9:

            sel.text = "\t\t\t\t";

             event.returnValue = false;

            break;

        case 13 :

            break;

        default:

            break;

    }

}

//-->

</SCRIPT>

</head>

<body marginleft=0 marginright=0 onload="init()" oncontextmenu="if(event.srcElement.tagName!='TEXTAREA'&&event.srcElement.tagName!='INPUT'&&event.srcElement.contentEditable!='true'){return false;}">

<SCRIPT LANGUAGE="JavaScript">

<!--

    progressorbar.start();

//-->

</SCRIPT>

<DIV id=test style="diaplay:none;position:absolute;"></DIV>

<div id="logoBar" noWrap oncontextmenu ="return false;" onselectstart="return false;"><b>Welcome to <a href='mailto:ttyp@21cn.com'><font color='#ffffff'>ttyp</font></a></b>'s code collection v0.44,and enjoy it:)</div>

<div id="toolBar" noWrap oncontextmenu ="return false;" onselectstart="return false;">

    <a href="#" class="bt_off" id="bt_newitem" hideFocus="true"><div></div>NewItem</a><a href="#" class="bt_off" id="bt_delete" hideFocus="true" style="border-right-width:0px"><div></div>Delete</a><a href="#" class="bt_off" id="bt_save" hideFocus="true" style="border-right-width:1px"><div></div>Save</a>

    <span id="settingBar">

        <a href="#" class="setting" id="bt_update" hideFocus="true" style="border-right:0px">Update</a>

    </span>

</div>

</div>

<div id="divTree" xmlSrc="xml/data.xml"></div>

<div id="divList" onfocus="this.blur();">

    <div id=cbHead style="display:none;"></div>

    <div id="divContent">

        <iframe id="fraGeneral" name="fraGeneral" style="display:none;" frameborder=0 width="100%" height="100%" marginwidth=0 marginheight=0 ></iframe>

        <iframe id="fraPreview" name="fraPreview" style="display:none;" frameborder=0 width="100%" height="100%" marginwidth=0 marginheight=0 ></iframe>

        <div id="editBox" name="editBox" style="width:100%;height:100%;" marginheight="1" marginwidth="1" contenteditable="true" onselectstart="event.cancelBubble=true;" designMode="off" oncontextmenu="return true;" onkeydown="editTab()"></div>

    </div>

    <SPAN STYLE="position:absolute;width:123;height:15;clip: rect(0 123 15 0)" onfocus="this.blur();">

    <IMG ID="Img_modelBtn" style="border:0" SRC="skin/default/img/editmode.gif" STYLE="position:absolute;top:0;left:0" usemap="#MBtnMap">

    </SPAN>

</div>

<div id="divSplit"></div>

<map name="MBtnMap">

<area shape="rect" coords="0, 0, 40, 44"   alt="普通设计模式"    onclick="changeModel(0,true)">

<area shape="rect" coords="41, 0, 81, 44"  alt="HTML原码模式"    onclick="changeModel(1,true)">

<area shape="rect" coords="82, 0, 122, 44" alt="预览模式"        onclick="changeModel(2,true)">

</map>

</body>

</html>

<SCRIPT language=JavaScript src="js/plugin.js"></script>

本文由 华域联盟 原创撰写:华域联盟 » code collection v0.44 hta

转载请保留出处和原文链接:https://www.cnhackhy.com/13980.htm

本文来自网络,不代表华域联盟立场,转载请注明出处。

作者: sterben

发表评论

联系我们

联系我们

2551209778

在线咨询: QQ交谈

邮箱: admin@cnhackhy.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部