源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

hta实现的笨狼树状节点查看器

  • 时间:2021-03-17 22:27 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:hta实现的笨狼树状节点查看器
<html> <head> <style> table {     border-collapse: collapse;     border-width: 4;      border-style: double;      border-color:#15336F;     font-size:12px; } body {     font-size:12px; } div {     width:100%;     height:9;      border-style:solid;      border-width:1;      border-color:#eeeeee;         vertical-align:top;     font-size:12;     cursor:hand; } </style> <title>笨狼树状节点查看器</title> </head> <body>  <INPUT type="file" id=file1 name=file1>请输入xml文件路径  <INPUT type="button" value="确定" onclick = "vbs:analyse ">  <SELECT id="select1" onchange="vbs:analyse">         <OPTION value="nodeName" >显示标签</OPTION>         <OPTION  value="text" >显示文字</OPTION>         <OPTION  value="attribute" >显示属性</OPTION>         <OPTION  value="XPath" >显示XPath</OPTION> </SELECT> <DIV id="oList" style="padding-left:0"></DIV> </body>  <script language="vbScript" >     '**************************************     '****作者:    超级大笨狼 superdullwolf****     '**************************************                 public dic,favour,anything    ,doc               set doc = CreateObject("Microsoft.XMLDOM")                 doc.async=False     sub analyse()             dim myTR              favour = select1.value             removeDIV               if not doc.load(file1.value) then                  alert "文件加载失败,请检查文件是否存在!"                 else                 Set rootNode = doc.DocumentElement                 set rootDIV = document.createElement("DIV")                     rootDIV.setAttribute "XPath",rootNode.nodeName                  oList.setAttribute "XPath",rootNode.nodeName                                   oList.setAttribute "parsed",false                 appendDIV     oList,rootNode                 end if     end sub     sub appendDIV(myDIV,myNode)             dim myChild    ,newDIV,ChildID,thisID ,ChildXPath                  for each myChild in myNode.childNodes             if     myChild.nodeName <> "#text"    then                     set newDIV = document.createElement("DIV")                             myDIV.appendChild    newDIV                             addPx newDIV, myDIV,10    '缩进10象素                 ChildID = 0                 ChildXPath = myDIV.getAttribute("XPath") & "/" & myChild.nodeName & "[" & ChildID & "]"                     do while not doc.selectSingleNode(ChildXPath) is myChild                     ChildID=ChildID+1                     ChildXPath = myDIV.getAttribute("XPath") & "/" & myChild.nodeName & "[" & ChildID & "]"                     loop                 newDIV.setAttribute "XPath",ChildXPath                  newDIV.setAttribute "parsed",false    '子元素还没标记过了。                 newDIV.title = newDIV.getAttribute("XPath")                  newDIV.innerText = getText(myChild,newDIV)                  if myChild.childNodes.length>0 then                          newDIV.attachEvent "onclick",GetRef("attachOnclick")                 end if             end if                              next         myDIV.setAttribute "parsed",true'所有子元素都标记过了。     end sub         sub removeDIV()                      dim oldDIV         for each  oldDIV in   oList.childNodes                          oldDIV.removeNode(true)                       next          end sub     sub attachOnclick()         dim obj    ,nodeXPath,cDIV         set obj=window.event.srcElement          nodeXPath = obj.getAttribute("XPath")         if instr(nodeXPath,"#text") >0 then              window.event.cancelBubble = true             exit sub         end if         if not obj.getAttribute("parsed")= true then                   appendDIV obj ,doc.selectSingleNode(nodeXPath)         else             for each cDIV in obj.children                 if cDIV.style.display = "none" then                     cDIV.style.display = ""                 else                     cDIV.style.display = "none"                 end if             next         end if         window.event.cancelBubble = true              end sub     function getText(myNode,oDIV)         dim myAttribute         getText = ""         select case favour             case "text"                 if not isnull(myNode.text) then                     getText = myNode.text                  else                     getText = "空文字"                  end if                         case "nodeName"                                      getText = myNode.nodeName                 case "attribute"                     if myNode.nodeName <>"#text" then                     for each myAttribute in  myNode.attributes                                                  getText =getText &  myAttribute.name                         getText = getText & "=" & chr(34)                          getText = getText & myAttribute.value  & chr(34) & " "                     next                     getText = trim(getText)                 end if                           case "XPath"                 getText = oDIV.title         end select         if trim(getText) ="" then getText ="空"     end function     sub addPx(newDIV,oldDIV,num)         dim re,myString             set re = new RegExp         re.Global = true         re.Pattern = "[^\d]*"                     myString =  re.Replace(oldDIV.style.paddingLeft, "")         if myString ="" then myString = "0"         myString = (cint(myString) + num ) & "px"         newDIV.style.paddingLeft = myString         set re = nothing     end sub  </script> </html> [img]http://www.1sucai.cn/myeditor/sysimage/file/unknow.gif[/img] [url=http://xiazai.jb51.net/yuanma/hta/XMLTool.hta]XMLTool.hta[/url]
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部