From 757b5f5e674abd212586a0af94577dec4cc46c2d Mon Sep 17 00:00:00 2001 From: hdw <496960745@qq.com> Date: 星期四, 25 十月 2018 11:57:16 +0800 Subject: [PATCH] 导航定位 --- gx_tieta/WebRoot/pages/js/pages/siderbar.js | 214 ++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 210 insertions(+), 4 deletions(-) diff --git a/gx_tieta/WebRoot/pages/js/pages/siderbar.js b/gx_tieta/WebRoot/pages/js/pages/siderbar.js index 6cab98b..6d51ccf 100644 --- a/gx_tieta/WebRoot/pages/js/pages/siderbar.js +++ b/gx_tieta/WebRoot/pages/js/pages/siderbar.js @@ -88,7 +88,7 @@ var _data = $.extend({}, defaults, data[i]); // 璁剧疆鍐呭瀹瑰櫒 var _li = $('<li></li>'); - var _a = $('<a href="javascript:;" class="sider-menu-folder"></a>'); + var _a = $('<a href="javascript:;" id="'+_data.txt+'" class="sider-menu-folder"></a>'); var _i = $('<i class="fa fa fa-caret-right"></i>'); var _span = $('<span class="treeview-txt">'+_data.txt+'</span>'); if(_data.file) { @@ -184,14 +184,25 @@ }; - _prop.activeFile = function(cla, txt, callback) { + _prop.activeFile = function(container, cla, id, callback) { var rsCla = '.sider-menu-file'+'.'+cla; - var aFiles = this.ele.find(rsCla); + var aFiles = container.find(rsCla); + console.log(aFiles.length); // 娌℃湁鑾峰彇鍒板唴瀹瑰氨杩斿洖false if(aFiles.length == 0) { return false; } var tgt = aFiles.eq(0); + + // 閬嶅巻鍒楄〃 + aFiles.each(function() { + var _id = $(this).attr('id'); + // id鍖归厤 + if(_id == id) { + tgt = $(this); + } + }); + tgt.click(); }; @@ -405,7 +416,7 @@ treeView.treeView(container, formatData); //console.info(formatData); if(active) { - treeView.activeFile('eleGroup', ''); + treeView.activeFile(container,'eleGroup', ''); var battId = formatData[0].id; location.hash="#"+battId; location.hash = ""; @@ -419,4 +430,199 @@ // 灏嗗嚱鏁扮粦瀹氬埌GLOBAL.pages.siderbar鐨勫懡鍚嶇┖闂翠笅 gl.pages.siderbar.fourth = fourth; + +})(jQuery, window, document, GLOBAL); + + +// 璁剧疆鏍规嵁鐪佸競鏈烘埧鍜岀數姹犺繘琛屽畾浣� +;(function($, window, document, gl, undefined) { + gl.namespace('pages.siderbar'); + + var homeInfo = { + StationName1: '', + StationName2: '', + StationName: '', + StationId: '' + }; + + var battId=undefined; + + // 瀹氫綅鏈烘埧 + function localSideBar(treeView, container, data) { + // 鍏抽棴鎵�鏈夌殑 + treeView.ele.find('li').removeClass('sider-menu-open'); + + + first(treeView, container); + homeInfo.StationName1 = data.province; + homeInfo.StationName2 = data.city; + homeInfo.StationName = data.home; + homeInfo.StationId = data.homeid; + battId = data.battid; + } + + // 灏嗗嚱鏁扮粦瀹氬埌GLOBAL.pages.siderbar鐨勫懡鍚嶇┖闂翠笅 + gl.pages.siderbar.localSideBar = localSideBar; + + // 鐢熸垚涓�绾у鑸�-鐪� + function first(treeView, container) { + //treeView.addProgress(container); + $.ajax({ + type: "post", + url: "BattInfAction!serchAllStation", + async:true, + dataType:'json', + data:null, + success: function(data){ + var rs = JSON.parse(data.result); + if(rs.code == 1) { + var _data= rs.data; + var formatData = []; + for(var i=0; i<_data.length;i++) { + var __data = _data[i]; + var tmp = treeView.getFolder(__data.StationName1, 'province', __data); + formatData.push(tmp); + } + treeView.treeView(container, formatData); + treeView.spreadFolder('province', homeInfo.StationName1, firstSpread); + }else { + + } + } + }); + } + + // 灞曞紑涓�绾у鑸� + function firstSpread(treeView, container) { + second(treeView, container, homeInfo, true); + } + + + // 鐢熸垚浜岀骇瀵艰埅-甯� + function second(treeView, container, data, spread) { + // 宸茬粡瀛樺湪 + if(container.find('ul').length !=0) { + treeView.spreadFolder('city', homeInfo.StationName2, secondSpread, true); + return; + } + treeView.addProgress(container); + $.ajax({ + type: "post", + url: "BattInfAction!serchStationName2", + async:true, + dataType:'json', + data:"json = "+JSON.stringify(data), + success: function(data){ + var rs = JSON.parse(data.result); + treeView.delProgress(container); + if(rs.code == 1) { + var _data= rs.data; + var formatData = []; + for(var i=0; i<_data.length;i++) { + var __data = _data[i]; + var tmp = treeView.getFolder(__data.StationName2, 'city', __data); + formatData.push(tmp); + } + treeView.treeView(container, formatData); + + if(spread) { + treeView.spreadFolder('city', homeInfo.StationName2, secondSpread); + } + } + } + }); + } + + // 灞曞紑浜岀骇瀵艰埅 + function secondSpread(treeView, container) { + third(treeView, container, homeInfo, true); + } + + + // 鐢熸垚 涓夌骇瀵艰埅-鏈烘埧 + function third(treeView, container, data, spread) { + // 宸茬粡瀛樺湪 + if(container.find('ul').length !=0) { + location.hash="#"+homeInfo.StationName; + location.hash=""; + treeView.spreadFolder('home', homeInfo.StationName, thirdSpread, true); + return; + } + treeView.addProgress(container); + $.ajax({ + type: "post", + url: "BattInfAction!serchStationName3", + async:true, + dataType:'json', + data:"json = "+JSON.stringify(data), + success: function(data){ + var rs = JSON.parse(data.result); + treeView.delProgress(container); + if(rs.code == 1) { + var _data= rs.data; + var formatData = []; + for(var i=0; i<_data.length;i++) { + var __data = _data[i]; + var tmp = treeView.getFolder(__data.StationName, 'home', __data); + formatData.push(tmp); + } + treeView.treeView(container, formatData); + if(spread) { + treeView.spreadFolder('home', homeInfo.StationName, thirdSpread, true); + } + } + } + }); + } + + // 灞曞紑涓夌骇瀵艰埅 + function thirdSpread(treeView, container, data) { + fourth(treeView, container, homeInfo, true); + } + + // 鐢熸垚 涓夌骇瀵艰埅-鐢垫睜缁� + function fourth(treeView, container, data, active) { + // 宸茬粡瀛樺湪 + if(container.find('ul').length !=0) { + container.addClass('sider-menu-open'); + if(battId) { + treeView.activeFile(container,'eleGroup', battId); + }else { + treeView.activeFile(container,'eleGroup', ''); + } + return; + } + treeView.addProgress(container); + $.ajax({ + type: "post", + url: "BattInfAction!serchBattByStation", + async:true, + dataType:'json', + data:"json = "+JSON.stringify(data), + success: function(data){ + var rs = JSON.parse(data.result); + treeView.delProgress(container); + if(rs.code == 1) { + var _data= rs.data; + //console.log(_data); + var formatData = []; + for(var i=0; i<_data.length;i++) { + var __data = _data[i]; + var tmp = treeView.getFile(__data.BattGroupName, 'eleGroup', __data.BattGroupId, __data); + formatData.push(tmp); + } + treeView.treeView(container, formatData); + if(active) { + if(battId) { + treeView.activeFile(container,'eleGroup', battId); + location.hash="#"+battId; + location.hash=""; + }else { + treeView.activeFile(container,'eleGroup', ''); + } + } + } + } + }); + } })(jQuery, window, document, GLOBAL); \ No newline at end of file -- Gitblit v1.9.1