国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JS實現websocket長輪詢實時消息提示的效果

2019-11-19 15:12:24
字體:
來源:轉載
供稿:網友

效果圖如下:

參考代碼如下:

jsp代碼:

<%@ page contentType="text/html;charset=UTF-8" language="java"%><div class="page-header navbar navbar-fixed-top">  <div class="page-header-inner">    <div class="page-logo">      <a href="<c:url value=" rel="external nofollow" rel="external nofollow" /"/>"><img        src="<c:url value="/img/logo.png"/>" style="height: 14px" alt="logo"        class="logo-default" /></a>      <div class="menu-toggler sidebar-toggler hide"></div>    </div>    <a href="javascript:;" rel="external nofollow" rel="external nofollow" class="menu-toggler responsive-toggler"      data-toggle="collapse" data-target=".navbar-collapse"></a>    <div class="top-menu">      <ul class="nav navbar-nav pull-right">        <li class="dropdown dropdown-alert"><a href="#" rel="external nofollow" rel="external nofollow"           class="dropdown-toggle" data-toggle="dropdown"          data-hover="dropdown" data-close-others="true"> <span            class="badge pull-left"></span><label class="hidden-sm">報警</label><i            class="fa fa-bell"></i>        </a>          <ul class="dropdown-menu">          </ul></li>        <li class="dropdown dropdown-user"><a href="#" rel="external nofollow" rel="external nofollow"           class="dropdown-toggle" data-toggle="dropdown"          data-hover="dropdown" data-close-others="true"> <span            class="username username-hide-on-mobile">你好,${sessionScope.username}</span>            <i class="fa fa-angle-down"></i>        </a>          <ul class="dropdown-menu">            <li><a href="javascript:;" rel="external nofollow" rel="external nofollow" id="updatePass"><i                class="icon-lock"></i>修改密碼</a></li>            <li><a href="<c:url value=" rel="external nofollow" rel="external nofollow" /logout"/> "><i                class="icon-key"></i>退出登錄</a></li>          </ul></li>      </ul>    </div>  </div></div><div class="clearfix"></div><script>  //toastr.sos(num1)</script><script type="text/javascript"  src="http://cdn.bootcss.com/jquery/3.1.0/jquery.min.js"></script><script type="text/javascript"  src="http://cdn.bootcss.com/sockjs-client/1.1.1/sockjs.js"></script><script type="text/javascript">  function wsPath() {    var pathName = window.document.location.pathname;    var host = window.location.host;    var projectName = pathName.substring(0,        pathName.substr(1).indexOf('/') + 1);    return (host + projectName);  }  wsPath = wsPath();  var websocket = null;  if ('WebSocket' in window) {    websocket = new WebSocket("ws://" + wsPath + "/websocket/socketServer");  } else if ('MozWebSocket' in window) {    websocket = new MozWebSocket("ws://" + wsPath        + "/bison/websocket/socketServer");  } else {    websocket = new SockJS("http://" + wsPath        + "/bison/sockjs/socketServer");  }  websocket.onmessage = onMessage;  websocket.onope = onOpen;  websocket.onerror = onError;  websocket.onclose = onClose;  function onOpen() {  }  function onMessage(evt) {    var $uncheckedAlertMenuBtn = $("a.dropdown-toggle", $uncheckedAlertMenu);    var $uncheckedAlertBadge = $("span.badge", $uncheckedAlertMenuBtn);    var $uncheckedAlertMenu = $('li.dropdown-alert');    var $uncheckedAlertList = $('ul', $uncheckedAlertMenu);    var a = $uncheckedAlertBadge.html();    $uncheckedAlertBadge.html(Number(a) + 1);    //判斷報警類型 如果是位置偏移,place+1    if (evt.data == "1") {      var count;      var a = $("#number").html();      if (a == null) {        count = 1;        $uncheckedAlertList            .prepend('<li class="place-alert"><a href="alert?menuId=274" rel="external nofollow" rel="external nofollow" > <font color="red" id="place-alert">'                + "位置報警(<font id ='number'>"                + count                + "</font>)" + '</font></a></li>');      } else {        count = Number(a) + 1;        $("#place-alert").html(            "位置偏移(<font id='number'>" + count + "</font>)");      }    }    if (evt.data == "0") {      var count;      var a = $("#snum").html();      if (a == null) {        count = 1;        $uncheckedAlertList            .prepend('<li class="sos-alert"> <a href="alert?menuId=274" rel="external nofollow" rel="external nofollow" ><font color="red" id="sos-alert">'                + "SOS報警(<font id='snum'>"                + count                + ")</font>"                + '</font></a></li>');      } else {        count = Number(a) + 1;        $("#sos-alert").html(            "SOS報警(<font id='snum'>" + count + "</font>)");      }    }  }  function onError() {    websocket.close();  }  function onClose() {  }  window.close = function() {    websocket.onclose();  }</script>

總結

以上所述是小編給大家介紹的JS實現websocket長輪詢實時消息提示的效果,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 莎车县| 秭归县| 易门县| 定襄县| 尼勒克县| 天长市| 延津县| 芷江| 张家界市| 乌拉特前旗| 股票| 上栗县| 怀柔区| 睢宁县| 盐源县| 阿克陶县| 元江| 宁强县| 兴文县| 茶陵县| 监利县| 连山| 博爱县| 科技| 沭阳县| 绥江县| 博野县| 城口县| 望奎县| 万宁市| 五原县| 无棣县| 临汾市| 阳城县| 龙井市| 闽侯县| 高阳县| 建瓯市| 新和县| 洪江市| 泽州县|