shawl.qiu Javascript 圆角表格生成类 sqRounded v1.0

来源:互联网 发布:网络服务器配置与应用 编辑:程序博客网 时间:2024/06/05 19:50

shawl.qiu Javascript 圆角表格生成类 sqRounded v1.0


说明:
写这个东西其实嘛, 是因为本人烦了弄个纯CSS圆角表格老要复制一大堆代码, 麻烦不说, 还很容易出错...
所以呗, 本类就诞生了.

主要用法...:
比如你有 div 标签, id 为 x
那只需要调用一下本类就OK, 也可以一次作用于多个标签, 外观设置嘛, 由于是刚写, 肯定有不足的地方了, 这个只能在使用过程中继续改进喽.

好了, 这个真没啥好说的, 技术含量真的很少, 不过本人觉得这个想法不错...:)

目录:
1. 类 sqRounded  及使用演示

shawl.qiu
2007-05-13
http://blog.csdn.net/btbtd

下载:
http://shawl.qiu.googlepages.com/sqRounded_v1.0.7z
http://files.myopera.com/btbtd/javascript/sqRounded_v1.0.7z

演示:
http://shawl.qiu.googlepages.com/sqRounded_v1.0.htm

1. 类 sqRounded  及使用演示
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <!-- DW6 -->
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <title>shawl.qiu template</title>
  7. <script type="text/javascript">
  8. //<![CDATA[
  9.  /*-----------------------------------------------------------------------------------*/
  10.   * shawl.qiu javascript sqRounded class v1.0
  11.  /*-----------------------------------------------------------------------------------*/
  12.  //---------------------------------begin class sqRounded()-------------------------------//
  13.  function sqRounded()
  14.  { // shawl.qiu code
  15.   //------------------------------------begin public variable
  16.   //---------------begin about
  17.   this.auSubject = 'shawl.qiu javascript sqRounded class';
  18.   this.auVersion = 'v1.0';
  19.   this.au = 'shawl.qiu';
  20.   this.auEmail = 'shawl.qiu@gmail.com';
  21.   this.auBlog = 'http://blog.csdn.net/btbtd';
  22.   this.auCreateDate = '2007-5-13';
  23.   //---------------end about
  24.   this.ID = ""; // id1,id2,id3
  25.   this.Prefix = "kJkjSKDjkjsdkf98ufsk";
  26.   this.Postfix = "skdjfkJHjhasdf";
  27.   
  28.   this.Set = [];
  29.   
  30.   this.Style = {};
  31.   this.Style.BorderColor = "#5CB620"; //#9BD1FA
  32.   this.Style.Color = "white";
  33.   this.Style.Margin = "1px 0px";
  34.   this.Style.Width = "100%";
  35.   this.Style.Height = "100%";
  36.   this.Style.Display = "block";
  37.   this.Style.Addition = 'font: 14px "Trebuchet MS",Verdana,Arial,sans-serif';
  38.   
  39.   this.Style.A = {};
  40.   this.Style.A.Link = "color:lightyellow;";
  41.   this.Style.A.Hover = "";
  42.   this.Style.A.Visited = "color:whitesmoke;";
  43.   
  44.   this.Style.Text = {};
  45.   this.Style.Text.BackgroundColor = "#5CB620";
  46.   this.Style.Text.Padding = "2px 2px";
  47.   this.Style.Text.Margin = "0px 5px";
  48.   this.Style.Text.Addition = "";
  49.   
  50.   //------------------------------------end public variable
  51.   
  52.   //------------------------------------begin private variable
  53.   var Tl = this;
  54.   //------------------------------------end private variable
  55.   
  56.   //------------------------------------begin public method
  57.   this.Go = fGo;
  58.   //------------------------------------end public method
  59.   
  60.   //------------------------------------begin private method
  61.   function fGo()
  62.   {
  63.    Tl.ID = fClearSpace(Tl.ID);
  64.    if(Tl.ID=="")
  65.    {
  66.     alert("输入ID为空!");
  67.     return;
  68.    }

  69.    Tl.Set = Tl.ID.split(",");
  70.    
  71.    for(var i=0, j=Tl.Set.length; i<j; i++)
  72.    {
  73.     var Name = Tl.Set[i];
  74.     
  75.     var Id1 = Tl.Prefix+Name;
  76.     var Id2 = Name+Tl.Postfix;
  77.     var Id3 = Tl.Prefix+Name+Tl.Postfix;
  78.     
  79.     var Obj = document.getElementById(Tl.Set[i]);
  80.     
  81.     if(Obj!=null)
  82.     {
  83.      var EleSpan = document.createElement("span");
  84.      EleSpan.id = Id3;
  85.      
  86.      var sStyle = 
  87.      ' #'+Id1+' * a:link'+
  88.      '{ '+
  89.        Tl.Style.A.Link+
  90.      '}'+
  91.      ' #'+Id1+' * a:hover'+
  92.      '{ '+
  93.        Tl.Style.A.Hover+
  94.      '}'+
  95.      ' #'+Id1+' * a:visited'+
  96.      '{ '+
  97.        Tl.Style.A.Visited+
  98.      '}'+
  99.      ' #'+Id1+'{ '+
  100.       'margin: '+Tl.Style.Margin+';'+
  101.       'background: '+Tl.Style.BorderColor+';'+
  102.       'color: '+Tl.Style.Color+';'+
  103.       'width: '+Tl.Style.Width+';'+
  104.       'height: '+Tl.Style.Height+';'+
  105.       'display: '+Tl.Style.Display+';'+
  106.       Tl.Style.Addition+
  107.       '}'+
  108.      ' '+
  109.      ' #'+Id1+' b.rtop, #'+Id1+' b.rbottom'+
  110.      ' {'+
  111.      '  display:block;'+
  112.      '  background: #FFF;'+
  113.      ' }        '+
  114.      ' '+
  115.      ' #'+Id1+' b.rtop b, #'+Id1+' b.rbottom b'+
  116.      ' {'+
  117.      '  display:block;height: 1px; overflow: hidden; background: '+Tl.Style.BorderColor+';'+
  118.      ' } '+
  119.      ' #'+Id1+' b.rtop b.r1, #'+Id1+' b.rbottom b.r1'+
  120.      ' {'+
  121.      '  margin: 0 5px;'+
  122.      ' }'+
  123.      ' #'+Id1+' b.rtop b.r2, #'+Id1+' b.rbottom b.r2'+
  124.      ' {'+
  125.      '  margin: 0 3px;'+
  126.      ' }'+
  127.      ' #'+Id1+' b.rtop b.r3, #'+Id1+' b.rbottom b.r3'+
  128.      ' {'+
  129.      '  margin: 0 2px;'+
  130.      ' }'+
  131.      ' '+
  132.      ' #'+Id1+' b.rtop b.r4, #'+Id1+' b.rbottom b.r4'+
  133.      ' {'+
  134.      '  margin: 0 1px;height: 2px;'+
  135.      ' }'+
  136.      
  137.      ' #'+Id1+' div'+
  138.      ' {'+
  139.      '  padding:'+Tl.Style.Text.Padding+';'+
  140.      ' background-color:'+Tl.Style.Text.BackgroundColor+';'+
  141.      ' margin:'+Tl.Style.Text.Margin+';'+
  142.      Tl.Style.Text.Addition+
  143.      ' }'
  144.      ;
  145.      
  146.      fAddStyleFromStr(sStyle);
  147.      
  148.      EleSpan.innerHTML = 
  149.      '<div id="'+Id1+'">        '+
  150.      '<b class="rtop"><b class="r1"></b><b class="r2"></b><b class="r3"></b><b class="r4"></b></b> '+
  151.      '<div>'+
  152.      ' <span id="'+Id2+'">'+
  153.      'temp........'+
  154.      ' </span>'+
  155.      '</div>'+
  156.      '<b class="rbottom"><b class="r4"></b><b class="r3"></b><b class="r2"></b><b class="r1"></b></b>        '+
  157.      '</div>     '
  158.      ;
  159.      fInsertNode(Obj, EleSpan, true);
  160.      
  161.      var TempEle = document.getElementById(Id2);
  162.      if(TempEle!=null)
  163.      {
  164.       var ParentNode = TempEle.parentNode;
  165.       ParentNode.replaceChild(Obj, TempEle);
  166.      }
  167.      
  168.     } // end if
  169.    } // en for
  170.    
  171.   } // end function fGo
  172.    
  173.   String.prototype.trim=fStrTrim;
  174.   function fStrTrim(sStr){
  175.    var o=sStr?sStr:this;
  176.    if(!o||o=='')return '';
  177.    return o.replace(/^/s+|/s+$/g,'');
  178.   } // shawl.qiu code
  179.   
  180.   function fClearSpace(str)
  181.   {
  182.    return str.replace(//s+/g, "");
  183.   }
  184.    
  185.   function fInsertNode(OldNode, NewNode, bBefore)
  186.   {// shawl.qiu script
  187.    var ParentNode = OldNode.parentNode;
  188.    if(!ParentNode)return false;
  189.    if(bBefore)
  190.    {
  191.     ParentNode.insertBefore(NewNode,OldNode);
  192.        return false;
  193.    } // end if
  194.    ParentNode.replaceChild(NewNode, OldNode);
  195.    ParentNode.insertBefore(OldNode, NewNode);
  196.   } // end function fInsertNode
  197.   
  198.   function fAddStyleFromStr(sIpt, sId)
  199.   {// shawl.qiu script 
  200.    var EleStyle = document.createElement("style");
  201.    EleStyle.type = "text/css";
  202.    if(sId&&sId!="")
  203.    {
  204.     EleStyle.id = sId;
  205.    }
  206.    if(fCkBrs()==1)
  207.    {
  208.     EleStyle.styleSheet.cssText = sIpt;
  209.    }
  210.    else
  211.    {
  212.     EleStyle.innerHTML = sIpt;
  213.    }
  214.    function fCkBrs()
  215.    {
  216.     switch (navigator.appName)
  217.     {
  218.      case 'Opera': return 2;
  219.      case 'Netscape': return 3;
  220.      defaultreturn 1;
  221.     }
  222.    } // end function fCkBrs 
  223.    var EleHead=document.getElementsByTagName("head")[0]
  224.    if(!EleHead) EleHead=document.body;
  225.    EleHead.insertBefore(EleStyle, EleHead.firstChild)
  226.   } // end function fAddStyleFromStr
  227.   //------------------------------------end private method
  228.  } // shawl.qiu code
  229.  //---------------------------------end class sqRounded()---------------------------------//
  230.  
  231.  
  232.  onload = 
  233.   function()
  234.   {
  235.    var sqRnd = new sqRounded();
  236.    sqRnd.ID = "div1, div2, div3, div4";
  237.    sqRnd.Go();
  238.    sqRnd = null;
  239.   }
  240. //]]>
  241. </script>

  242. </head>
  243. <body>
  244. <div id="div1">
  245.  this.auSubject = 'shawl.qiu javascript sqRounded class';<br />
  246.  this.auVersion = 'v1.0';<br />
  247.  this.au = 'shawl.qiu';<br />
  248.  this.auEmail = 'shawl.qiu@gmail.com';<br />
  249.  this.auBlog = 'http://blog.csdn.net/btbtd';<br />
  250.  this.auCreateDate = '2007-5-13';
  251. </div>
  252. <div id="div2">
  253.  this.auSubject = 'shawl.qiu javascript sqRounded class';<br />
  254.  this.auVersion = 'v1.0';<br />
  255.  this.au = 'shawl.qiu';<br />
  256.  this.auEmail = 'shawl.qiu@gmail.com';<br />
  257.  this.auBlog = 'http://blog.csdn.net/btbtd';<br />
  258.  this.auCreateDate = '2007-5-13';
  259. </div>
  260. <div id="div3">
  261.  this.auSubject = 'shawl.qiu javascript sqRounded class';<br />
  262.  this.auVersion = 'v1.0';<br />
  263.  this.au = 'shawl.qiu';<br />
  264.  this.auEmail = 'shawl.qiu@gmail.com';<br />
  265.  this.auBlog = 'http://blog.csdn.net/btbtd';<br />
  266.  this.auCreateDate = '2007-5-13';
  267. </div>
  268. <div id="div4">
  269.  this.auSubject = 'shawl.qiu javascript sqRounded class';<br />
  270.  this.auVersion = 'v1.0';<br />
  271.  this.au = 'shawl.qiu';<br />
  272.  this.auEmail = '<a href="mailto:shawl.qiu@gmail.com">shawl.qiu@gmail.com</a>';<br />
  273.  this.auBlog = '<a href="http://blog.csdn.net/btbtd">http://blog.csdn.net/btbtd</a>';<br />
  274.  this.auCreateDate = '2007-5-13';<br />
  275.  想得到, 做得到!
  276. </div>
  277. </body>
  278. </html>