• js 技巧 (三)



    //无模式的提示框 function modelessAlert(Msg) 
    { 
       window.showModelessDialog("javascript:alert("""+escape(Msg)+""");window.close();","","status:no;resizable:no;help:no;dialogHeight:height:30px;dialogHeight:40px;");
    } 



    //屏蔽按键 
    <html> 
    <head> 
      <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
      <noscript><meta http-equiv="refresh" content="0;url=about:noscript"></noscript> 
      <title>屏蔽鼠标右键、Ctrl+N、Shift+F10、Alt+F4、F11、F5刷新、退格键</title> 
    </head> 
    <body> 
    <script language="Javascript"><!-- 
      //屏蔽鼠标右键、Ctrl+N、Shift+F10、F11、F5刷新、退格键 
      //Author: meizz(梅花雨) 2002-6-18 
    function document.oncontextmenu(){event.returnValue=false;}//屏蔽鼠标右键 
    function window.onhelp(){return false} //屏蔽F1帮助 
    function document.onkeydown() 
    { 
      if ((window.event.altKey)&& 
          ((window.event.keyCode==37)||   //屏蔽 Alt+ 方向键 ← 
           (window.event.keyCode==39)))   //屏蔽 Alt+ 方向键 → 
      { 
         alert("不准你使用ALT+方向键前进或后退网页!"); 
         event.returnValue=false; 
      } 
         /* 注:这还不是真正地屏蔽 Alt+ 方向键, 
         因为 Alt+ 方向键弹出警告框时,按住 Alt 键不放, 
         用鼠标点掉警告框,这种屏蔽方法就失效了。以后若 
         有哪位高手有真正屏蔽 Alt 键的方法,请告知。*/ 
      if ((event.keyCode==8)  ||                 //屏蔽退格删除键 
          (event.keyCode==116)||                 //屏蔽 F5 刷新键 
          (event.ctrlKey && event.keyCode==82)){ //Ctrl + R 
         event.keyCode=0; 
         event.returnValue=false; 
         } 
      if (event.keyCode==122){event.keyCode=0;event.returnValue=false;}  //屏蔽F11 
      if (event.ctrlKey && event.keyCode==78) event.returnValue=false;   //屏蔽 Ctrl+n 
      if (event.shiftKey && event.keyCode==121)event.returnValue=false;  //屏蔽 shift+F10 
      if (window.event.srcElement.tagName == "A" && window.event.shiftKey)  
          window.event.returnValue = false;             //屏蔽 shift 加鼠标左键新开一网页 
      if ((window.event.altKey)&&(window.event.keyCode==115))             //屏蔽Alt+F4 
      { 
          window.showModelessDialog("about:blank","","dialogWidth:1px;dialogheight:1px"); 
          return false; 
      } 
    } 
    </script> 
    屏蔽鼠标右键、Ctrl+N、Shift+F10、Alt+F4、F11、F5刷新、退格键 
    </body> 
    </html> 


    //屏蔽打印 
    <style> 
    @media print{ 
    * {display:none} 
    } 
    </style> 


    //移动的图层,拖动 

    1.<span style='position:absolute;200;height:200;background:red' onmousedown=MouseDown(this) onmousemove=MouseMove() onmouseup=MouseUp()>meizz</span> 
    <script language=javascript> 
    var Obj; 
    function MouseDown(obj) 
    { 
      Obj=obj; 
      Obj.setCapture(); 
      Obj.l=event.x-Obj.style.pixelLeft; 
      Obj.t=event.y-Obj.style.pixelTop; 
    } 
    function MouseMove() 
    { 
      if(Obj!=null) 
      { 
        Obj.style.left = event.x-Obj.l; 
        Obj.style.top = event.y-Obj.t; 
      } 
    } 
    function MouseUp() 
    { 
      if(Obj!=null) 
      { 
        Obj.releaseCapture(); 
        Obj=null; 
      } 
    } 
    </script> 
    2. 
    <div id="myDiv" src="logo.gif" ondrag="doDrag();" onmouseover="this.style.cursor='hand'" onmousedown="doMouseDown();"> 
    <a href="#" onclick="return false"><h1>wlecome</h1></a> 
    </div> 
    <script language="JavaScript" type="text/javascript"> 
    var orgMouseX; 
    var orgMouseY; 
    var orgObjX; 
    var orgObjY; 
    function doDrag() 
    { 
    var myObject=document.all.myDiv; 

    var x=event.clientX; 
    var y=event.clientY; 
    myObject.style.left=x-(orgMouseX-orgObjX); 
    myObject.style.top=y-(orgMouseY-orgObjY); 
      
    } 
    function doMouseDown() 
    { 
    orgMouseX=event.clientX; 
    orgMouseY=event.clientY; 
    orgObjX=parseInt(document.all.myDiv.style.left); 
    orgObjY=parseInt(document.all.myDiv.style.top); 
    } 

    </script> 
      
    //文档状态改变 

    <iframe src="a.html" id="f" name="f" scrolling="no" frameborder=0 marginwidth=0 marginheight=0></iframe> 
    <script> 
    var doc=window.frames["f"].document; 
    function s(){ 
    if (doc.readyState=="complete"){ 
      document.all.f.style.height=doc.body.scrollHeight 
      document.all.f.style.width=doc.body.scrollWidth 
    } 
    } 
    doc.onreadystatechange=s 
    </script> 


    //刷新后不变的文本框 <HTML> 
    <HEAD> 
    <META NAME="save" CONTENT="history"> 
    <STYLE> 
       .sHistory {behavior:url(#default#savehistory);} 
    </STYLE> 
    </HEAD> 
    <BODY> 
    <INPUT class="sHistory" type=text id=oPersistInput> 
    </BODY> 
    </HTML> 

    //访问剪贴板 

    event.dataTransfer.setData("URL", oImage.src); 
    sImageURL = event.dataTransfer.getData("URL") 
    (2)普通访问 
    window.clipboardData.setData("Text",oSource.innerText); 
    window.clipboardData.getData("Text"); 


    //操作COOKIE 

    function SetCookie(sName, sValue) 
    { 
    document.cookie = sName + "=" + escape(sValue) + "; "; 
    } 
    function GetCookie(sName) 
    { 
    var aCookie = document.cookie.split("; "); 
    for (var i=0; i < aCookie.length; i++) 
    { 
       
      var aCrumb = aCookie.split("="); 
      if (sName == aCrumb[0])  
      return unescape(aCrumb[1]); 
    } 
      
    } 
    function DelCookie(sName) 
    { 
    document.cookie = sName + "=" + escape(sValue) + "; expires=Fri, 31 Dec 1999 23:59:59 GMT;"; 
    } 


    //setTimeout增加参数 

    <script> 
    var _st = window.setTimeout; 
    window.setTimeout = function(fRef, mDelay) { 
    if(typeof fRef == 'function'){ 
      var argu = Array.prototype.slice.call(arguments,2); 
      var f = (function(){ fRef.apply(null, argu); }); 
      return _st(f, mDelay); 
    } 
    return _st(fRef,mDelay); 
    } 
    function test(x){ 
    alert(x); 
    } 
    window.setTimeout(test,1000,'fason'); 
    </script> 


    //自定义的apply,call 

    Function.prototype.apply = function (obj, argu) { 
    if (obj) obj.constructor.prototype._caller = this;  
    var argus = new Array(); 
    for (var i=0;i<argu.length;i++) 
      argus = "argu[" + i + "]"; 
    var r; 
    eval("r = " + (obj ? ("obj._caller(" + argus.join(",") + ");") : ("this(" + argus.join(",") + ");"))); 
    return r; 
    }; 
    Function.prototype.call = function (obj) { 
    var argu = new Array(); 
    for (var i=1;i<arguments.length;i++) 
      argu[i-1] = arguments; 
    return this.apply(obj, argu); 
    };       

      出处至:http://xiaobingandxiaoer.iteye.com/blog/1917696

  • 相关阅读:
    UpdateBatch到底是怎么用的?
    进度条在.net导入Excel时的应用实例
    asp.net页面触发事件panel滚动条高度不变的实现方法
    .NET中的枚举用法浅析
    .NET程序调试技巧(一):快速定位异常的一些方法
    ASP.NET实现推送文件到浏览器的方法
    微软官方SqlHelper类 数据库辅助操作类
    Asp.net中使用文本框的值动态生成控件的方法
    ASP.NET中Dictionary基本用法实例分析
    ASP.NET动态增加HTML元素的方法实例小结
  • 原文地址:https://www.cnblogs.com/bcphp/p/7080199.html
Copyright © 2020-2023  润新知