header.js 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247
  1. /**
  2. * [ONEMAP.M.header]
  3. * @return {[object]}
  4. */
  5. define([
  6. 'html!templates/header',
  7. 'css!styles/header'
  8. ], function (tplLayout) {
  9. // var jybzsj = new Date().getTime(),
  10. // tn = 0,
  11. // vtimeInterval = null,
  12. // timeInterval = null;
  13. // var modLocaSpace = {};
  14. function init() {
  15. setLayout();
  16. // setClock();
  17. // initClock();
  18. // if (vtimeInterval) {
  19. // clearInterval(vtimeInterval);
  20. // }
  21. // vtimeInterval = setInterval(function () {
  22. // initClock();
  23. // }, 300000) //一分钟校验一次
  24. // subscribe();
  25. bindEvents();
  26. };
  27. function setLayout() {
  28. $(tplLayout).appendTo($("#header"));
  29. // $('#logo').html('<img src="' + onemapUrlConfig.systemLogoUrl + '" />');
  30. // layoutResize();
  31. // $(window).resize(function () {
  32. // layoutResize();
  33. // });
  34. // $("#searchresult").mCustomScrollbar({
  35. // scrollInertia: 500
  36. // });
  37. // //拖拽
  38. // $("#diBanBen .popup-ct").dragmove($('#diBanBen'));
  39. }
  40. function layoutResize() { }
  41. /**
  42. * 添加系统logo
  43. */
  44. function setLogo() { }
  45. function bindEvents() {
  46. //关掉用户
  47. var userInfo = $("#userContent .userInfo");
  48. if (userInfo.hasClass("active")) {
  49. userInfo.removeClass("active");
  50. }
  51. return;
  52. //全局搜索
  53. $("#searchInViewKey").on("input", function () {
  54. require(['modDir/tools/toolPlaceSearch'], function (toolPlaceSearch) {
  55. toolPlaceSearch.changSearchType('pac');
  56. toolPlaceSearch.init();
  57. });
  58. });
  59. //关闭左侧栏
  60. $("#searchInViewKey").on('focus', function () {
  61. ONEMAP.M.user.closeLeft();
  62. })
  63. //二维码
  64. $('#appQRCode').bind('mouseenter', function () {
  65. $('.appQRCodeContent').show();
  66. })
  67. $('#appQRCode').bind('mouseleave', function () {
  68. $('.appQRCodeContent').hide();
  69. })
  70. //开启目录
  71. $("#header .menu").bind('click', function () {
  72. if (!ONEMAP.D.isLoad) {
  73. ONEMAP.C.publisher.publish({
  74. type: 'warning',
  75. message: '用户未登录,请先登录。'
  76. }, 'noteBar::add');
  77. return false
  78. }
  79. if ($("#menu").hasClass("moveOut")) {
  80. $("#menu").animate({
  81. left: "-340px"
  82. }, 200)
  83. $("#menu").removeClass("moveOut");
  84. var layer = $("#layerControlMenu");
  85. var layerLeft = parseFloat($("#layerControlMenu").css("left"));
  86. if (layerLeft <= 0) {
  87. layer.animate({
  88. left: "-340px"
  89. }, 200)
  90. }
  91. } else {
  92. $("#menu").addClass("moveOut");
  93. $("#menu").animate({
  94. left: "0px"
  95. }, 200);
  96. var layer = $("#layerControlMenu");
  97. var layerLeft = parseFloat($("#layerControlMenu").css("left"));
  98. if (layerLeft <= 0) {
  99. layer.animate({
  100. left: "0px"
  101. }, 200)
  102. }
  103. $("#searchresult").hide();
  104. $('#header .h-center .close').click();
  105. }
  106. //关掉打开的目录
  107. $("#menu li.menu-base").removeClass('active')
  108. })
  109. // $("#tiShiGengXin .closeTS").bind("click", function () {
  110. // $("#tiShiGengXin").hide();
  111. // })
  112. // $("#tiShiGengXin a").bind("click", function () {
  113. // $("#diBanBen").show();
  114. // })
  115. //加载WEB三维控件
  116. function DetectActiveX() {
  117. try {
  118. var comActiveX = new ActiveXObject("LocaSpacePlugin.LocaSpacePluginCtrl.1");
  119. } catch (e) {
  120. return false;
  121. }
  122. return true;
  123. }
  124. modLocaSpace.DetectActiveX = DetectActiveX;
  125. $("#diBanBen .tab-left li").bind("click", function () {
  126. $("#diBanBen .tab-left li").removeClass("active");
  127. $("#diBanBen .tab-right li").removeClass("active");
  128. if ($(this).hasClass("xp")) {
  129. $("#diBanBen li.xp").addClass("active");
  130. } else if ($(this).hasClass("win7")) {
  131. $("#diBanBen li.win7").addClass("active");
  132. } else if ($(this).hasClass("sanw")) {
  133. $("#diBanBen li.sanw").addClass("active");
  134. }
  135. })
  136. $("#diBanBen .close").bind("click", function () {
  137. $("#diBanBen").hide();
  138. })
  139. }
  140. function change23D(options) {
  141. if (options == '2d') {
  142. $('#header').removeClass('class3d');
  143. } else {
  144. $('#header').addClass('class3d');
  145. }
  146. }
  147. /**
  148. * 初始化作战时间
  149. */
  150. function initClock() {
  151. var sUrl = onemapUrlConfig.stalliteServer + "/NumEarth/time/get";
  152. // var sUrl= onemapUrlConfig.testServicesUrl+"/NumEarth/time/get";
  153. var t1 = new Date().getTime();
  154. if (!map23DConfig.clockLocal) {
  155. $.ajax({
  156. url: sUrl,
  157. type: 'GET',
  158. timeout: 2000,
  159. dataType: 'json',
  160. success: function (data) {
  161. jybzsj = parseInt(data.data) * 1000;
  162. setClock()
  163. },
  164. error: function () {
  165. jybzsj = new Date().getTime();
  166. setClock();
  167. }
  168. })
  169. } else {
  170. setClock();
  171. }
  172. }
  173. /**
  174. * 设置作战时间
  175. */
  176. function setClock() {
  177. if (timeInterval) {
  178. clearInterval(timeInterval)
  179. }
  180. timeInterval = setInterval(function () {
  181. newdata = new Date(jybzsj);
  182. newdata.setSeconds(newdata.getSeconds() + 1);
  183. jybzsj = newdata.getTime();
  184. year = newdata.getFullYear();
  185. month = (newdata.getMonth() + 1) < 10 ? '0' + (newdata.getMonth() + 1) : (newdata.getMonth() + 1);
  186. day = newdata.getDate() < 10 ? '0' + newdata.getDate() : newdata.getDate();
  187. var hour = newdata.getHours() < 10 ? '0' + newdata.getHours() : newdata.getHours();
  188. var mintes = newdata.getMinutes() < 10 ? '0' + newdata.getMinutes() : newdata.getMinutes();
  189. var second = newdata.getSeconds() < 10 ? '0' + newdata.getSeconds() : newdata.getSeconds();
  190. var hourF = hour.toString().substr(0, 1);
  191. var hourS = hour.toString().substr(1, 2);
  192. var mintesF = mintes.toString().substr(0, 1);
  193. var mintesS = mintes.toString().substr(1, 2);
  194. var secondF = second.toString().substr(0, 1);
  195. var secondS = second.toString().substr(1, 2);
  196. $("#standardTime .title .date").html(year + "-" + month + "-" + day);
  197. $("#standardTime .time").html("<span class='n" + hourF + "'></span><span class='n" + hourS + "'></span><span class='mao'></span><span class='n" + mintesF + "'></span><span class='n" + mintesS + "'></span><span class='mao'></span><span class='n" + secondF + "'></span><span class='n" + secondS + "'></span>");
  198. }, 1000);
  199. }
  200. function fullMap(option) {
  201. if (option) {
  202. $("#header").fadeOut('slow')
  203. } else {
  204. $("#header").fadeIn('slow')
  205. }
  206. }
  207. /**
  208. * 注册订阅
  209. * @type {Function}
  210. * 推送:ONEMAP.C.publisher.publish(options,'moduleName::type');
  211. * 订阅:ONEMAP.C.publisher.subscribe(layoutResize,'sideBarLayoutChange');
  212. */
  213. function subscribe() {
  214. ONEMAP.C.publisher.subscribe(change23D, 'change23D');
  215. }
  216. return ONEMAP.M.header = {
  217. init: init
  218. };
  219. })