zoukankan      html  css  js  c++  java
  • HTML5中对于网络是否断开的检测.很有意思哦

     1 //事件的封装
     2 var EventUtil = {
     3     addHandler: function (element, type, handler) {//注册事件
     4         if (element.addEventListener) {//非IE
     5             element.addEventListener(type, handler, false);
     6         }
     7         else if (element.attachEvent) {//IE
     8             element.attachEvent("on" + type, handler);
     9         }
    10         else {//dom0级
    11             element["on" + type] = handler;
    12         }
    13     },
    14     removeHandler: function (element, type, handler) {//取消注册事件
    15         if (element.removeEventListener) {//非IE
    16             element.removeEventListener(type, handler, false);
    17         }
    18         else if (element.detachEvent) {//IE
    19             element.detachEvent("on" + type, handler);
    20         }
    21         else {//dom0级
    22             element["on" + type] = null;
    23         }
    24     },
    25     getEvent: function (event) {//返回event的引用
    26         return event ? event : window.event;
    27     },
    28     getTarget: function (event) {//返回鼠标单击的目标对象
    29         return event.target || event.srcElement;
    30     },
    31     preventDefault: function (event) {//取消默认事件(a的href,radio,checkbox,)
    32         if (event.preventDefault) {
    33             event.preventDefault();
    34         }
    35         else {
    36             event.returnValue = false;
    37         }
    38     },
    39     stopPropagation: function (event) {//因为这个EventUtil只支持冒泡,不支持事件捕获,所以这个方法只能阻止冒泡
    40         if (event.stopPrapagation) {
    41             event.stopPropagation();
    42         }
    43         else {
    44             event.cancelBubble = true;
    45         }
    46     },
    47     getRelatedTarget: function (event) {//获取相关元素
    48         /*
    49         页面中有一个div;当鼠标离开这个div时,事件的主目标是div,而相关元素是body.
    50         mouseover:事件的主目标是获得光标的元素,而相关元素就是那个失去光标的元素.
    51         mouseout:事件的主目标是失去光标的元素,而相关元素使获得光标的那个元素.
    52         */
    53         if (event.relatedTarget) { return event.relatedTarget; }
    54         else if (event.toElement) { return event.toElement; }
    55         else if (event.fromElement) { return event.fromElement; }
    56         else { return null; }
    57     },
    58     getButton: function (event) {//获取鼠标按钮的点击方式
    59         if (document.implementation.hasFeature("MouseEvents", "2.0")) { return event.button; }
    60         else {
    61             switch (event.button) {
    62                 case 0:
    63                 case 1:
    64                 case 3:
    65                 case 5:
    66                 case 7:
    67                     return 0; //左击
    68                 case 2:
    69                 case 6:
    70                     return 2; //中间键
    71                 case 4:
    72                     return 1; //右击
    73             }
    74         }
    75     }
    76 };
    77 
    78 
    79 //是否在线的判断:
    80  window.onload = function () {
    81             function addMessage(str) {
    82                 var oDiv = document.getElementById("line");
    83                 var oP = document.createElement("p");
    84                 oP.innerHTML = str;
    85                 oDiv.appendChild(oP);
    86             }
    87             EventUtil.addHandler(window, "online", function () {
    88                 addMessage("在线");
    89             });
    90             EventUtil.addHandler(window, "offline", function () {
    91                  addMessage("不在线");
    92             });
    93         }
    1 <body>
    2 在线检测;
    3 <div id="line"></div>
    4 </body>

    测试环境:

    结果:

  • 相关阅读:
    向量空间模型 词袋模型
    python 小点
    python list的append()和extend()方法
    numpy 数组运算
    内置函数和numpy中的min(),max()函数
    python index()函数
    Python支持的正则表达式元字符和语法
    Python多线程
    查看linux机器配置&内核版本
    Shell获取文件的文件名和扩展名的例子
  • 原文地址:https://www.cnblogs.com/guoyansi19900907/p/3582085.html
Copyright © 2011-2022 走看看