zoukankan      html  css  js  c++  java
  • javascript面向对象重写右键菜单事件

    <html>
    <head>
    <title></title>
    <script type="text/javascript">


    var EventUtil = {
    addHandler: function (element, type, handler) {

    if (element.addEventListener) {

    element.addEventListener(type, handler, false);
    }

    else if (element.attachEvent) {

    element.attachEvent("on" + type, handler);
    }
    else {

    element["on" + type] = handler;
    }
    },
    getEvent: function (event) {
    return event ? event : window.event;

    },
    getTarget: function (event) {
    return event.target || event.scrElement;
    },
    preventDefault: function (event) {
    if (event.preventDefault) {
    event.preventDefault();
    }
    else {
    event.returnValue = false;
    }
    },
    removeHandler: function (element, type, handler) {
    if (element.removeEventListener) {
    element.removeEventListener(type, handler, false);
    }
    else if (element.detachEvent) {
    element.detachEvent("on" + type, handler);
    }
    else {
    element["on" + type] = null;
    }
    },
    stopPropagation: function (event) {
    if (event.stopPropagation) {
    event.stopPropagation();
    }
    else {
    event.cancelBubble = true;
    }
    }
    };
    EventUtil.addHandler(window, "load", function (event) {

    var testdiv = document.getElementById("testdiv");

    EventUtil.addHandler(testdiv, "contextmenu", function (event) {
    event = EventUtil.getEvent(event);
    EventUtil.preventDefault(event);

    var menu = document.getElementById("myMenu");

    menu.style.left = event.clientX + "px";
    menu.style.top = event.clientY + "px";
    menu.style.visibility = "visible";
    });

    EventUtil.addHandler(document, "click", function (event) {
    document.getElementById("myMenu").style.visibility = "hidden";
    });
    });

    </script>
    </head>
    <body>


    <div id="testdiv" style=" 500px; height:500px; background-color:#eee; ">div</div>

    <div id="myMenu" style=" 100px; height:100px; background-color:Red;position:absolute;">menu</div>
    </body>

    </html>

  • 相关阅读:
    VS2008找不到MFC90d.dll错误解决方法
    字符编码之间的转换
    java 中使用RSA非对称性加密解密
    java eclipse中使用wsdl生成soap 的客户端代码
    java 打印空心菱形的两种实现
    Chrome 快捷键
    电脑常用快捷键
    VS2013常用快捷键
    Eclipse常用快捷键
    java 使用for循环打印杨辉三角形
  • 原文地址:https://www.cnblogs.com/jcomet/p/2575763.html
Copyright © 2011-2022 走看看