My FAQ,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > Visual C++ > IE编程
怎样拦截IE事件
作者:dyydyy 时间:2001-10-10 10:11 出处:互联网 责编:MyFAQ
              摘要:怎样拦截IE事件

                                     怎样拦截IE事件
————————————————————————————————————————————————
作者:段永义(dyydyy) 主页:http://ware.51.net  单位:中庐机 时间:2001-4-26
————————————————————————————————————————————————
    经常上网朋友们可能都有这样的体验,你的鼠标的右击功能可能被拦截住,转页出现警告的对话框,或者被转移到添加到收藏夹等,而没有出现系统右键菜单。谁都知道这是script小程序产生的效果,下面我们来探讨一下此方面的内容。
    要实现上述的效果,我们可以将它分为两个步骤:1.捕捉事件   2.事件转移。
————————————————————————————————————————————————
    1.捕捉事件
    (1).用vbscript捕捉事件相对来说,特别是对熟悉vb的朋友来说,那是再简单不过了,只要定义成以下的形式就可以了。
    <script language=vbscript>
    SUB 对象名_事件()
    ...

    事件转移部分
    ...
   
    END SUB
    </script>
    (2).而用javascipt写的script捕捉事件,理解起来就有的难度,但只要大家多用多理解多记,其实也很简单。
    <script lnaguage=javascript for =对象名 event=事件>
    ...

    事件转移部分
    ...
    [return false;//如有必要,将事件断路]
    </script>
    用javascript写脚本还有下面一种方法
     <script>  file://language 缺省为javascript
    对象名.事件=函数()//这个函数不管你是如何定义的,自编的,vbscript编写的,或是系统的(如alert),都可以。
    </script>
    在以上的两种情况中,需要注明的是,对象名既可以是window,document,也可以是用户自定义的对象。
如<div id=obj1>...</div>中的obj1。但有一点大家特别需要注意,对象与事件的搭配。如果此对象没有此事件,如将obj1与oncontextmenu搭配,将会引发牛头不对马嘴的事件啰!
    通用对象有以下两个:window、document
    通用事件有:onclick,ondblclick,onkeypress,onmouseup,onmousedown ...,详细情况请参见MS网页调试工具。
    一般地来说,自定义的对象都具有onclick,ondblclick,onmouseup,onmousedown事件。
————————————————————————————————————————————————
   2.事件转移

    事件转移就是功能实现过程。想玩什么花,八仙过海,各显神通。
    下面介绍一个实例。锁定鼠右键菜单,包括键盘上菜单键,shift+F10功能均同样被锁定。
    <script language=vbscript>
    SUB document_oncontextmenu()
    msgbox "右键系统菜单已被转移!"
    END SUB
    </script>

或:
    <script for=document event=oncontextmenu>
    alert("右键系统菜单已被转移!");
    return false;
    </script>
或:
    <script>
    function say(){alert("右键系统菜单已被转移!");return false;}
    document.oncontextmenu=say();
    </script>

最后一点:脚本应在<body>之前载入,以确保(尤其是在页面内容巨多情况)脚本语言的正确载入。
————————————————————————————————————————————————
 

 

 

 

 

 

 

 

 


 

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 myfaq.com.cn All rights reserved. www.myfaq.com.cn 版权所有