• 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>

  • 相关阅读:
    引自天天安全网 ——※ 中华民族传统文化精髓___二十四孝 ※
    Microsoft 技术与安全大会
    Linux的用户和用户组管理
    vsftpd设置与使用总结
    MySQL与NoSQL——SQL与NoSQL的融合
    linux下查看用户及用户组的方法
    软件系统开发中的数据交换协议
    Ubuntu实用简单的FTP架设
    淘宝网商品库优化实践访谈
    current attention url
  • 原文地址:https://www.cnblogs.com/jcomet/p/2575763.html
Copyright © 2020-2023  润新知