table

          防止代碼復制

          //插入 document.body.oncopy event事件中
          //或者 <body>的"oncopy"屬性
          function copyCode()
          {
           try
           {
            var range = document.selection.createRange();
            if (document.selection.type != "none")
            {
             var parent = range.parentElement();
             var parentName = parent.tagName;
             if (parentName != null)
             {
              if (parentName.toLowerCase() == "pre")
              {
               // Replace superfluous <br> tags in a <pre> block.
               var re = /<br>/gi;
               var code = range.htmlText.replace(re, "\r\n");

               // Replace non-breaking spaces.
               re = /&nbsp;/gi;
               code = code.replace(re, " ");

               // Replace & characters.
               re = /&amp;/gi;
               code = code.replace(re, "&");

               // Replace < characters.
               re = /&lt;/gi;
               code = code.replace(re, "<");

               // Replace > characters.
               re = /&gt;/gi;
               code = code.replace(re, ">");
               
               // CJM: Remove colorization
               re = /<\/?span([^>])*>/gi;
               code = code.replace(re, "");

               if (code != null)
               {
                window.event.returnValue = false;
                window.clipboardData.setData("Text", code);
               }
              }
             }
            }
           }
           catch(e) {}
          }

          <HTML>
          <HEAD>
          <TITLE>防復制 </TITLE>
          <SCRIPT language=javascript src="/blog/js/oncopy.js">
          </SCRIPT>

          <META NAME="Generator" CONTENT="EditPlus">
          <META NAME="Author" CONTENT="feiyun">
          <META NAME="Keywords" CONTENT="nocopy">
          <META NAME="Description" CONTENT="no copy">
          </HEAD>
          <BODY  oncopy="return copyCode();" >
          <FONT COLOR="#FF0000">防代碼復制,不信你試試(只防止代碼復制,其他可以復制)</FONT><BR>
          <TABLE>
          <TR>
           <TD>aa</TD>
           <TD>bb</TD>
           <TD>cc</TD>
          </TR>
          <TR>
           <TD>dd</TD>
           <TD>ee</TD>
           <TD>ff</TD>
          </TR>
          </TABLE>

          <PRE lang=vbscript>&lt;%
          <SPAN class=vb-statement>option</SPAN> <SPAN class=vb-statement>explicit</SPAN>
          <SPAN class=vb-statement>dim</SPAN> fso
          <SPAN class=vb-statement>set</SPAN> fso = createobject(<SPAN class=vb-string>&quot;scripting.filesystemobject&quot;</SPAN>)
          <SPAN class=vb-statement>dim</SPAN> asplines, jslines, aspbytes, jsbytes, aspwords
          iterate(server.mappath(<SPAN class=vb-string>&quot;/web_api&quot;</SPAN>))
          response.write <SPAN class=vb-string>&quot;ASP:
          Total Lines Coded: &quot;</SPAN> &amp; asplines &amp; <SPAN class=vb-string>&quot;
          Total Bytes: &quot;</SPAN> &amp; aspbytes &amp; <SPAN class=vb-string>&quot;
          Total Individual Elements (words) Typed: &quot;</SPAN> &amp; aspwords
          response.write <SPAN class=vb-string>&quot;
          JScript:
          Total Lines Coded: &quot;</SPAN> &amp; jslines &amp; <SPAN class=vb-string>&quot;
          &quot;</SPAN> &amp; <SPAN class=vb-string>&quot;Total Bytes: &quot;</SPAN> &amp; jsbytes
          <SPAN class=vb-statement>function</SPAN> iterate(path)
              <SPAN class=vb-statement>dim</SPAN> folder, folders, files, file, ts, txt, arr, f
              <SPAN class=vb-statement>set</SPAN> folder = fso.getfolder(path)
              <SPAN class=vb-statement>set</SPAN> files = folder.files
              <SPAN class=vb-statement>dim</SPAN> rx, c
              <SPAN class=vb-statement>set</SPAN> rx = <SPAN class=vb-keyword>new</SPAN> regexp
              rx.ignorecase = <SPAN class=vb-keyword>true</SPAN>
              rx.global = <SPAN class=vb-keyword>true</SPAN>
              rx.pattern = <SPAN class=vb-string>&quot;  +&quot;</SPAN>
              <SPAN class=vb-statement>for</SPAN> <SPAN class=vb-statement>each</SPAN> file in files
                  <SPAN class=vb-statement>if</SPAN> right(file.name,<SPAN class=vb-literal>4</SPAN>)=<SPAN class=vb-string>&quot;.asp&quot;</SPAN> <SPAN class=vb-keyword>or</SPAN> right(file.name,<SPAN class=vb-literal>3</SPAN>)=<SPAN class=vb-string>&quot;.js&quot;</SPAN> <SPAN class=vb-statement>then</SPAN>
                      <SPAN class=vb-statement>set</SPAN> ts = file.openastextstream
                      <SPAN class=vb-statement>if</SPAN> ts.atendofstream <SPAN class=vb-statement>then</SPAN> txt = <SPAN class=vb-string>&quot;&quot;</SPAN> <SPAN class=vb-statement>else</SPAN> txt = ts.readall
                      ts.close
                      txt = rx.replace(txt,<SPAN class=vb-string>&quot; &quot;</SPAN>)
                      txt = replace(txt,vbcrlf&amp;vbcrlf,vbcrlf)
                      arr = split(replace(txt,vbcrlf,<SPAN class=vb-string>&quot; &quot;</SPAN>),<SPAN class=vb-string>&quot; &quot;</SPAN>)
                      aspwords = aspwords + ubound(arr)
                      arr = split(txt,vbcrlf)
                      <SPAN class=vb-statement>if</SPAN> right(file.name,<SPAN class=vb-literal>4</SPAN>)=<SPAN class=vb-string>&quot;.asp&quot;</SPAN> <SPAN class=vb-statement>then</SPAN>
                          asplines = asplines + ubound(arr)
                          aspbytes = aspbytes + len(txt)
                      <SPAN class=vb-statement>else</SPAN>
                          jslines = jslines + ubound(arr)
                          jsbytes = jsbytes + len(txt)
                      <SPAN class=vb-statement>end</SPAN> <SPAN class=vb-statement>if</SPAN>
                  <SPAN class=vb-statement>end</SPAN> <SPAN class=vb-statement>if</SPAN>
              <SPAN class=vb-statement>next</SPAN>
              <SPAN class=vb-statement>set</SPAN> folders = folder.subfolders
              <SPAN class=vb-statement>for</SPAN> <SPAN class=vb-statement>each</SPAN> f in folders
                  iterate f.path
              <SPAN class=vb-statement>next</SPAN>
          <SPAN class=vb-statement>end</SPAN> <SPAN class=vb-statement>function</SPAN>
          %&gt;</PRE>

          </BODY>
          </HTML>

          posted on 2008-10-13 18:07 小卓 閱讀(163) 評論(0)  編輯  收藏 所屬分類: html and js

          主站蜘蛛池模板: 镶黄旗| 同德县| 盐山县| 台中县| 元江| 江山市| 来安县| 锡林郭勒盟| 微博| 同心县| 双峰县| 高雄市| 八宿县| 广德县| 西畴县| 长岭县| 泸西县| 卓尼县| 牙克石市| 邹平县| 京山县| 沾益县| 汉沽区| 枣强县| 交口县| 措美县| 定结县| 湘乡市| 临清市| 靖边县| 大余县| 高清| 晋宁县| 拉萨市| 福州市| 晴隆县| 肇东市| 会东县| 突泉县| 抚顺县| 剑阁县|