| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410 |
- //
- //var MenuSetting={
- // bjId:440141088,
- // IconsPath:'/zhyz/image/icon/',
- // ParentTitleObject:"{'wzid':'4401601','mc':'财务'},{'wzid':'4401461','mc':'系统'},{'wzid':'4401481','mc':'教务'},{'wzid':'4401401','mc':'珠海一职'},{'wzid':'4401521','mc':'后勤'},{'wzid':'4401541','mc':'科研'},{'wzid':'4401562','mc':'住宿'},{'wzid':'4401621','mc':'没用的应用'},{'wzid':'4401641','mc':'后台管理'},{'wzid':'4401421','mc':'校务'},{'wzid':'4401441','mc':'人员'},{'wzid':'4401661','mc':'演示'},{'wzid':'4401501','mc':'公共'},{'wzid':'4401561','mc':'内容'},{'wzid':'4401581','mc':'wenz'}",
- // target:"win2",
- // maxTopMenuCount:5,
- // needEditMenu:true
- //}
- //
- var menuSepartorClass = "menu-seperator";
- //var menuSepartorClass = "menu-split";
- function popupWindow(url, title, width, height, minHeight, maxHeight) {
- var params = {
- 'show': ["wdDialog"],
- 'hide': [],
- 'url': url,
- 'title': title,
- 'width': width,
- 'height': height
- }
- if (maxHeight && minHeight) {
- params.minHeight = minHeight;
- params.maxHeight = maxHeight;
- }
- console.log(params);
- wd.display.showComponent(params);
- // var windowId = new Date().getTime();var x = 0;
- // var y = 0;
- // var dhxWins = new dhtmlXWindows();
- // dhxWins.enableAutoViewport(true);
- // var win = dhxWins.createWindow(windowId, x, y, width, height);
- // win.keepInViewport(true);
- // win.center();
- // win.setText('<span style="font:14px;line-height:30px;" >' + title + '</span>');
- // win.attachURL(url);
- // win.setModal(true);
- // top.shortCutMenuDhxWins = dhxWins;
- }
- //排序
- function sortMenuInfo(mi) {
- //排序出问题了,达闲再处理
- if (true)
- return;
- // 排序开始
- // 思路:定义一个数组储存排序好的,定义menuInfo1对menuInfo进行排序
- var k1 = 1;
- // 储存排序
- var menuInfo1 = new Array();
- // 储存下标
- var count = new Array();
- //定义好顺序的数组
- var arry = new Array('公共', '个人首页', '修改密码', '图书馆', '科研处', '编辑首页', '编辑菜单', '个人网站编辑', '用户管理', '编辑首页模板', '编辑菜单模板', '综合校情及智能决策分析', '设置', '流程', '模板编辑', '编辑菜单(新)', '校务', '人员', '教务', '科研', '住宿', '内容', '财务', '后勤', '餐饮', '后台管理');
- //对menuInfo进行排序,menuInfo1储存已经排序好的也存在arry中的一部分
- for (var i = 0; i < arry.length; i++) {
- for (var k = 0; k < mi.length; k++) {
- //找出与事先定义好的顺序 并且保证是下拉框出现
- if (arry[i] == mi[k]['name'] && mi[k]['isRoot'] == 0) {
- menuInfo1[k1] = mi[k];
- count[k1] = k;
- k1++;
- }
- //确保公共(即下拉菜单的一级菜单)为第一个出现 这样才能先加载一级再加载二级。
- if (arry[0] == mi[k]['name']) {
- //console.log(mi[k]['name']);
- menuInfo1[0] = mi[k];
- count[0] = k;
- }
- }
- }
- //获取不存在arry中的那一部分 推到已经排好序的menuInfo1数组后面
- for (var i = 0; i < mi.length; i++) {
- if (count.indexOf(i) == -1) {
- menuInfo1[k1] = mi[i];
- k1++;
- }
- }
- // console.log(menuInfo1);
- // console.log(mi.concat());
- //删除原本的数组内容
- mi.splice(0, mi.length);
- for (var i = 0; i < menuInfo1.length; i++) {
- // 把排序好的数组添加进原来的数组
- mi.push(menuInfo1[i])
- }
- //console.log(mi);
- return mi;
- //mi = menuInfo1;
- //排序结束。
- }
- var scStart = typeof shortcutStartInfo == 'undefined' ? "{}" : shortcutStartInfo,
- scSearch = typeof shortcutSearchInfo == 'undefined' ? "{}" : shortcutSearchInfo;
- var recordVal4Menu;
- try {
- recordVal4Menu = eval("wdRecordVal" + MenuSetting.bjId);
- recordVal4Menu.div_plugin_menus = recordVal4Menu.div_plugin_menus||[];
- recordVal4Menu.width = recordVal4Menu.width || {
- value: "50%"
- };
- } catch (e) { }
- recordVal4Menu.state = recordVal4Menu.state || {
- value: 'searchMenu',
- default:
- false
- };
- var menus;
- function initMenuTotally() {
- menus = {
- menuObj: {
- info: menuInfo,
- infoAll: menuInfoAll,
- tree: menuTree,
- shortCut: shortcutMenuInfo,
- width: recordVal4Menu.width.value
- },
- startMenu: {
- info: startInfo,
- infoAll: startInfoAll,
- tree: startTree,
- shortCut: scStart,
- btn: {
- className: 'largeIcon-start cursor-click',
- text: '当前是“开始”\n点击切换到“搜索”'
- }
- },
- searchMenu: {
- info: searchInfo,
- infoAll: searchInfoAll,
- tree: searchTree,
- shortCut: scSearch,
- btn: {
- className: 'largeIcon-search cursor-click',
- text: '当前是“搜索”\n点击切换到“开始”'
- }
- }
- };
- recordVal4Menu.state = recordVal4Menu.state || {
- value: 'searchMenu',
- default:
- false
- };
- $(".menu-div:hidden").remove()
- // console.table(recordVal4Menu)
- for (var key in menus) {
- (function (k, m) {
- //if (k == 'menuObj' || recordVal4Menu.state.value == k) {
- document.getElementById(k + MenuSetting.bjId).style.display = "";
- initMenu(k, m);
- //}
- })(key, menus[key]);
- }
- function initMenu(menuPrefix, menu_) {
- var dimpointClass="icon-dimPoint";//灰点
- var mt = menu_.tree,
- mi = menu_.info,
- mia = menu_.infoAll,
- scmi = menu_.shortCut;
- try {
- //console.log(MenuSetting)
- function setMenuItem(item) {
- var has_menu_item = false;
- if (menuPrefix != 'menuObj') {
- if (isRoot_i == 0) {
- currTopPid = null;
- isRoot_i = 1;
- }
- for (var ii = 0; ii < mi.length; ii++) {
- var item_ = mi[ii];
- if (item['id'] == item_['pid']) {
- has_menu_item = true;
- var memberid_ = item_['id'].replace(/sub#[0-9]+?#/, "");
- for (var iii = 0; iii < mi.length; iii++) {
- var item_i = mi[iii];
- if (memberid_ == item_i['id']) {
- if (item_i['url'] != 'null' && item_i['url'] != '') {
- menu.addNewChild(currTopPid, index, item_['id'], item_['name'], false, "null.png");
- if(item_i['url'].indexOf("javascript")!=0){
- menu.setHref(item_['id'], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+item_i['url']+"')", target);
- }else{
- menu.setHref(item_['id'], item_i['url'], target);
- }
- //menu.setHref(item_['id'], item_i['url'], target);
- index++;
- break;
- }
- }
- }
- }
- }
- if (!has_menu_item) {
- for (var ii = 0; ii < mi.length; ii++) {
- var item_ = mi[ii];
- if (item['id'] == item_['id']) {
- if (item_['url'] != 'null' && item_['url'] != '') {
- if (!item['tplj'] || 'null' == item['tplj']) {
- menu.addNewChild(currTopPid, index, item['id'], item['name'], false, "null.png");
- } else {
- menu.addNewChild(currTopPid, index, item['id'], item['name'], false, item['tplj']);
- }
- if(item_['url'].indexOf("javascript")!=0){
- menu.setHref(item['id'], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+item_['url']+"')", target);
- }else{
- menu.setHref(item['id'], item_['url'], target);
- }
- //menu.setHref(item['id'], item_['url'], target);
- break;
- }
- }
- }
- }
- } else {
- for (var ii = 0; ii < mi.length; ii++) {
- var item_ = mi[ii];
- if (item['id'] == item_['pid']) {
- has_menu_item = true;
- // if (item_['url'] != 'null' && item_['url'] != '') {
- var memberid_ = item_['id'].replace(/sub#[0-9]+?#/, "");
- for (var iii = 0; iii < mi.length; iii++) {
- var item_i = mi[iii];
- if (memberid_ == item_i['id']) {
- if (item_i['url'] != 'null' && item_i['url'] != '') {
- if (memberid_.indexOf("_search") > 0) {
- /* 先去掉 "[搜索]" ,解决 norm 菜单条里的 菜单名带 "[搜索]" 的问题。Lin
- menu.addNewChild(currTopPid, index, item_['id'], item_['name'] + '[搜索]', false, "null.png");
- */
- console.log(" + '[搜索]':1");
- menu.addNewChild(currTopPid, index, item_['id'], item_['name'], false, "null.png");
- } else {
- menu.addNewChild(currTopPid, index, item_['id'], item_['name'], false, "null.png");
- }
- if(item_i['url'].indexOf("javascript")!=0){
- menu.setHref(item['id'], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+item_i['url']+"')", target);
- }else{
- menu.setHref(item['id'], item_i['url'], target);
- }
- //menu.setHref(item_['id'], item_i['url'], target);
- index++;
- break;
- }
- }
- }
- // }
- }
- }
- if (!has_menu_item) {
- // if (!item['tplj'] || 'null' == item['tplj']) {
- // menu.addNewChild(currTopPid, index, item['id'], item['name'], false, "null.png");
- // } else {
- // menu.addNewChild(currTopPid, index, item['id'], item['name'], false, item['tplj']);
- // }
- for (var ii = 0; ii < mi.length; ii++) {
- var item_ = mi[ii];
- if (item['id'] == item_['id']) {
- has_menu_item = true;
- if (item_['url'] != 'null' && item_['url'] != '') {
- var memberid_ = item_['id'].replace(/sub#[0-9]+?#/, "");
- for (var iii = 0; iii < mi.length; iii++) {
- var item_i = mi[iii];
- if (memberid_ == item_i['id']) {
- if (item_i['url'] != 'null' && item_i['url'] != '') {
- if (memberid_.indexOf("_search") > 0) {
- /* 先去掉 "[搜索]" ,解决 norm 菜单条里的 菜单名带 "[搜索]" 的问题。Lin
- menu.addNewChild(currTopPid, index, item_['id'], item_['name'] + '[搜索]', false, "null.png");
- */
- console.log(" + '[搜索]':2");
- menu.addNewChild(currTopPid, index, item_['id'], item_['name'], false, "null.png");
- } else {
- if (!item['tplj'] || 'null' == item['tplj']) {
- menu.addNewChild(currTopPid, index, item_['id'], item_['name'], false, "null.png");
- } else {
- menu.addNewChild(currTopPid, index, item_['id'], item_['name'], false, item['tplj']);
- }
- // menu.addNewChild(currTopPid, index, item_['id'], item_['name'], false, "null.png");
- }
- if(item_i['url'].indexOf("javascript")!=0){
- menu.setHref(item['id'], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+item_i['url']+"')", target);
- }else{
- menu.setHref(item['id'], item_i['url'], target);
- }
- //menu.setHref(item_['id'], item_i['url'], target);
- index++;
- break;
- }
- }
- }
- }
- }
- }
- }
- }
- }
- //编辑菜单,菜单模板
- function showEditMenuWindow(gf) {
- if (!MenuSetting.needEditMenu)
- return
- var windowId = 8888 //为了加关闭按钮而修改;
- var w = 800;
- var h = 500;
- var x = 0;
- var y = 0;
- var url = '/main/yonghu/editMenu.jsp?bjId=' + MenuSetting.bjId
- var dhxWins = new dhtmlXWindows();
- dhxWins.enableAutoViewport(true);
- var win = dhxWins.createWindow(windowId, x, y, w, h);
- win.keepInViewport(true);
- win.center();
- win.setText('<span style="font:14px;line-height:30px;" >编辑菜单</span>');
- if (gf == 'gf') {
- url = '/main/sheji/gfCd.do?bjId=' + MenuSetting.bjId;
- win.setText('<span style="font:14px;line-height:30px;" >编辑菜单模板</span>');
- }
- win.attachURL(url);
- win.setModal(true);
- top.shortCutMenuDhxWins = dhxWins; //为了加关闭按钮而修改
- }
- var menuDiv = document.getElementById(menuPrefix + MenuSetting.bjId);
- if (menuPrefix.indexOf("menuObj") == 0) {
- if((menu_.width+"").indexOf("%")>-1){
- menuDiv.style.width = menu_.width;
- }else{
- menuDiv.style.width = menu_.width + "px";
- }
- console.log(menuDiv.style.width)
- }
- var menuID_ = key + MenuSetting.bjId;
- var menu = window["menu_" + menuID_] = new dhtmlXMenuObject(menuID_, "dhx_black");
- menu.setIconsPath(MenuSetting.IconsPath);
- menu.setParentTitleObject(MenuSetting.ParentTitleObject);
- menu.setWzBjName('mbwz');
- var target = MenuSetting.target;
- var menuitem = new Array();
- var maxRootCount = 0;
- for (var i = 0; i < mi.length; i++) {
- if (mi[i] && mi[i].isRoot == '1')
- maxRootCount++;
- }
- // var maxTopMenuCount = menu_.max || MenuSetting.maxTopMenuCount;
- // if (maxTopMenuCount < maxRootCount)
- // maxTopMenuCount -= 2;
- var currTopMenuCount = 0;
- var index = 0;
- var currTopPid = 'dhxWebMenuTopId';
- /****
- * 查询id是否在按钮集合中
- * 用来隐藏没有权限的菜单
- */
- function inMenuTree(id) {
- // console.log(mt)
- for (var i = 0; i < mt.length; i++) {
- // console.log(mt[i][0]==id)
- if (mt[i][0] == id)
- return true;
- }
- return false;
- }
- if (menuDiv.children[0]) {
- menuDiv.children[0].style.width = 'max-content';
- }
- sortMenuInfo(mi);
- var isRoot_i = 0,
- isMore,
- createMore;
- var Menu_has_plugin_item=[];
- for (var i = 0; i < mi.length; i++) {
- var item = mi[i];
- if (item['id'] && item['id'].indexOf("plugin_") != -1) {
- var has_pid=false;
- if(Menu_has_plugin_item.length>0){
- Menu_has_plugin_item.forEach(function(menu_div){
- if(menu_div==item['pid']){
- has_pid=true;
- }
- });
- }
- if(has_pid==false){
- Menu_has_plugin_item.push(item['pid']);
- }
- }
- }
- for (var i = 0; i < mi.length; i++) {
- var item = mi[i];
- if (undefined == item);
- else {
- var change_menu_name=false;
- var change_menu_id="";
- if(recordVal4Menu.div_plugin_menus.length>0){
- recordVal4Menu.div_plugin_menus.forEach(function(menu_div){
- if(menu_div.pid==item['id']){
- item['name']=item['name'].replace('<span class="'+dimpointClass+'" style="margin-right: -12px;position: relative;"></span>',"");
- item['name']=menu_div.name+'<span class="'+dimpointClass+'" style="margin-right: -12px;position: relative;"></span>';
- change_menu_name=true;
- change_menu_id = menu_div.id;
- }
- });
- }
- if(change_menu_name==false&&Menu_has_plugin_item.length>0){
- Menu_has_plugin_item.forEach(function(menu_div){
- if(menu_div==item['id']){
- item['name']=item['name'].replace('<span class="'+dimpointClass+'" style="margin-right: -12px;position: relative;"></span>',"");
- item['name']=item['name']+'<span class="'+dimpointClass+'" style="margin-right: -12px;position: relative;"></span>';
- }
- });
- }
- //个性菜单
- if ('1' == item['isRoot']) {
- //console.log(item)
- if (!inMenuTree(item.id) && "null" != item.url) {
- continue
- };
- //计算按钮所占宽度
- var chs = (
- menuDiv.children[0] || {
- children: []
- }).children,
- width = 90;
- for (var i_ = 0; i_ < chs.length; i_++) { //
- width += getElementWidth(chs[i_]);
- if (i < mi.length - 1 && i_ == chs.length - 1) { //加上预判下一个按钮的位置
- width += getElementWidth(chs[i_]);
- }
- }
- if (isMore && menuRootName != item['id']) { //出现了“更多”按钮的情况
- setMenuItem(item);
- index++;
- } else if (createMore && menuRootName != item['id']) {
- isMore = true;
- createMore = false;
- menu.addNewSibling(currTopPid, 'more', '更多');
- currTopPid = 'more';
- index = 0;
- currTopMenuCount++;
- setMenuItem(item);
- index++;
- } else { //没出现“更多”按钮的情况
- // if (currTopMenuCount < maxTopMenuCount - 1) { //没超过最多项
- if (menuRootName == item['id']) {
- currTopPid = null
- };
- // setMenuItem(item);
- if (menuPrefix != 'menuObj') {
- if (isRoot_i == 0) {
- currTopPid = null;
- isRoot_i = 1;
- }
- for (var ii = 0; ii < mi.length; ii++) {
- var item_ = mi[ii];
- var item_id;
- if(change_menu_name==false){
- item_id=item['id'];
- }else{
- item_id=change_menu_id;
- }
- if (item_id == item_['id']) {
- if (item_['url'] != 'null' && item_['url'] != '') {
- menu.addNewSibling(currTopPid, item['id'], item['name']);
- currTopPid = item['id'];
- index = 0;
- currTopMenuCount++;
- if(item_['url'].indexOf("javascript")!=0){
- menu.setHref(item['id'], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+item_['url']+"')", target);
- }else{
- menu.setHref(item['id'], item_['url'], target);
- }
- // menu.setHref(item['id'], item_['url'], target);
- break;
- }
- }
- }
- if (item['pid'] == '' && item['id'].indexOf("_search") < 0 && item['id'].indexOf("_add") < 0) {
- menu.addNewSibling(currTopPid, item['id'], item['name'], false);
- currTopPid = item['id'];
- }
- } else {
- // if (item['id'].indexOf("_search") > 0) {
- // menu.addNewSibling(currTopPid, item['id'], item['name'] + '[搜索]');
- // } else {
- // menu.addNewSibling(currTopPid, item['id'], item['name']);
- // }
-
- for (var ii = 0; ii < mi.length; ii++) {
- var item_ = mi[ii];
- var item_id;
- // if(change_menu_name==false){
- item_id=item['id'];
- // }else{
- // item_id=change_menu_id;
- // }
- if (item_id == item_['id']) {
- if (item_['url'] != 'null' && item_['url'] != '') {
- // menu.addNewSibling(currTopPid, item['id'], item['name']);
- // currTopPid = item['id'];
- index = 0;
- currTopMenuCount++;
-
- if (item['id'].indexOf("_search") > 0) {
- /* 先去掉 "[搜索]" ,解决 norm 菜单条里的 菜单名带 "[搜索]" 的问题。Lin
- menu.addNewSibling(currTopPid, item['id'], item['name'] + '[搜索]');
- */
- console.log(" + '[搜索]':3");
- menu.addNewSibling(currTopPid, item['id'], item['name']);
- } else {
- menu.addNewSibling(currTopPid, item['id'], item['name']);
- }
- // if(item_['pid']=="admin"){
- // var url_admin = item_['url'];
- // menu.setHref(item['id'], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+url_admin+"')", target);
- // //menu.setHref(item['id'], url_admin, target);
- // }else{
- if(item_['url'].indexOf("javascript")!=0){
- menu.setHref(item['id'], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+item_['url']+"')", target);
- }else{
- menu.setHref(item['id'], item_['url'], target);
- }
- currTopPid = item['id'];
- // }
- // menu.setHref(item['id'], item_['url'], target);
- }
- else if(menuRootName == item['id']){
- menu.addNewSibling(currTopPid, item['id'], item['name']);
- currTopPid = item['id'];
- }
- else {
- var has_item_sub = false;
- for (var iii = 0; iii < mi.length; iii++) {
- var item_sub = mi[iii];
- if (item_id == item_sub['pid']) {
- var item_id_sub = item_sub['id'].replace(/sub#[0-9]+?#/, "");
- for (var iiii = 0; iiii < mi.length; iiii++) {
- var item_sub_ = mi[iiii];
- if (item_id_sub == item_sub_['id']) {
- if (item_sub_['url'] != 'null' && item_sub_['url'] != '') {
- if (item['id'].indexOf("_search") > 0) {
- /* 先去掉 "[搜索]" ,解决 norm 菜单条里的 菜单名带 "[搜索]" 的问题。Lin
- menu.addNewSibling(currTopPid, item['id'], item['name'] + '[搜索]');
- */
- console.log(" + '[搜索]':4");
- menu.addNewSibling(currTopPid, item['id'], item['name']);
- } else {
- menu.addNewSibling(currTopPid, item['id'], item['name']);
- }
- has_item_sub=true;
- currTopPid = item['id'];
- break;
- }
- }
- }
- if(has_item_sub){
- break;
- }
- }
- }
- }
- break;
- }
- }
- // currTopPid = item['id'];
- // index = 0;
- // currTopMenuCount++;
- }
- // } else {
- // if (!item['tplj'] || 'null' == item['tplj']) {
- // menu.addNewChild(currTopPid, index, item['id'], item['name']);
- // } else {
- // menu.addNewChild(currTopPid, index, item['id'], item['name'], false, item['tplj']);
- // }
- // index++;
- // // currTopMenuCount++;
- }
- } else { //2叶子2
- // console.log(item)
- if ('shortcutMenu' != item['id'] && 'editMenu' != item['id'] && menuRootName == item['pid'] && item['tplj'] != "null") {
- // console.log(item)
- if (item['id'] == "editSYMb") { // editDesktopDef,这里应该不用改 -- sys.menu.xml 已经写了 url。Lin
- item['url'] = "javascript:wd.topWindow.gxhymWindow.userEdit('gf');";
- }
- menu.addNewChild(item['pid'], index, item['id'] + "xxx", item['name'], false, item['tplj']);
- if ('1' == item['isLeaf']) {
- if ('editMenu' == item['id']) {
- menu.setHref(item['id'] + "xxx", item['url'], '_self');
- } else {
- if(item['url'].indexOf("javascript")!=0){
- menu.setHref(item['id']+"xxx", "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+item['url']+"')", target);
- }else{
- menu.setHref(item['id']+"xxx", item['url'], target);
- }
- //menu.setHref(item['id'] + "xxx", item['url'], target);
- }
- }
- index++;
- //编辑菜单
- } else if ('editMenu' == item['id']) {
- // console.log(item)
- if (!item['tplj'] || 'null' == item['tplj']) {
- menu.addNewChild(item['pid'], index, item['id'], item['name'], false, "null.png");
- menu.addNewSeparator(item['id']);
- } else {
- menu.addNewChild(item['pid'], index, item['id'], item['name'], false, item['tplj']);
- menu.addNewSeparator(item['id']);
- }
- index++;
- } else if ('shortcutMenu' == item['id']) {
- // console.log(item)
- if (!item['tplj'] || 'null' == item['tplj']) {
- menu.addNewChild(item['pid'], index, item['id'], item['name'], false, "null.png");
- } else {
- menu.addNewChild(item['pid'], index, item['id'], item['name'], false, item['tplj']);
- }
- index++
- }
- }
- //加href
- if ('1' == item['isLeaf']) {
- if (menuPrefix == 'menuObj') {
- if ('editMenu' == item['id']) {
- menu.setHref(item['id'], item['url'], '_self');
- } else if (item['id'].indexOf("_search") > 0) {
- for (var ii = 0; ii < mi.length; ii++) {
- var item_ = mi[ii];
- if (item['id'] == item_['id']) {
- if (item_['url'] != 'null' && item_['url'] != '' && item_['url'] != '111111111') {
- if(item_['url'].indexOf("javascript")!=0){
- menu.setHref(item['id'], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+item_['url']+"')", target);
- }else{
- menu.setHref(item['id'], item_['url'], target);
- }
- //menu.setHref(item['id'], item_['url'], target);
- break;
- }
- }
- }
- } else {
- if(item['url'].indexOf("javascript")!=0){
- for (var ii = 0; ii < mia.length; ii++) {
- var item_ = mia[ii];
- if (item['id'] == item_['id']) {
- if (item_['url'] != 'null' && item_['url'] != '' && item_['url'] != '111111111') {
- if(item_['url'].indexOf("javascript")!=0){
- menu.setHref(item['id'], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+item_['url']+"')", target);
- }else{
- menu.setHref(item['id'], item_['url'], target);
- }
- //menu.setHref(item['id'], item_['url'], target);
- break;
- }
- }
- }
- // menu.setHref(item['id'], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+item['url']+"')", target);
- }else{
- menu.setHref(item['id'], item['url'], target);
- }
- //menu.setHref(item['id'], item['url'], target);
- }
- }
- }
- //获取最后一个元素
- if (menuDiv.children[0] && menuDiv.children[0].children.length > 0 && !isMore) {
- var itemWrapper = menuDiv.children[0];
-
- var childs = itemWrapper.children;
- var menuBound = itemWrapper.getBoundingClientRect(),
- endOfs = menuDiv.getBoundingClientRect().right;
- if (menuDiv.querySelector("." + menuSepartorClass)) {
- endOfs = menuDiv.querySelector("." + menuSepartorClass).getBoundingClientRect().left;
- } else if (menuDiv.querySelector(".largeIcon-search")) {
- endOfs = menuDiv.querySelector(".largeIcon-search").getBoundingClientRect().left;
- } else if (menuDiv.querySelector(".largeIcon-start")) {
- endOfs = menuDiv.querySelector(".largeIcon-start").getBoundingClientRect().left;
- }
-
-
- endOfs -= 10;
- //平铺div
- var oriCss = itemWrapper.style.cssText;
- itemWrapper.style.width = menuBound.width * 10 + "px";
-
- for (var _i_ = childs.length - 1; _i_ > 0; _i_--) {
- var _ele_ = childs[_i_],
- eBound = _ele_.getBoundingClientRect();
-
- if (eBound.right >= endOfs || (createMore && eBound.right + 80 >= endOfs)) { //超过宽度或者是更多按钮
- console.log("remove__" + item['id'])
- _ele_.style.display = "none";
- // menu.removeItem(item['id']);
- createMore = true; //创建more按钮
- i--; //回退一个菜单初始化
- }
- }
- itemWrapper.style.cssText = oriCss;
- }
- }
- }
- for (var i = 0; i < mi.length; i++) {
- var item = mi[i];
- if (item['id'] && item['id'].indexOf("plugin_") != -1) {
- var itemname=item['name'];
- if(item['tips']!=null){
- itemname="<div name=\"plugin_tips\" wdTitle='"+item['tips']+"' wdId='"+item['id']+"' wdPid='"+item['pid']+"' onclick='change_menu_name(this)'>" + item['name'] + "</div>";
- }else{
- itemname="<div name=\"plugin_tips\" wdId='"+item['id']+"' wdPid='"+item['pid']+"' onclick='change_menu_name(this)'>" + item['name'] + "</div>";
- }
- // itemname+='<span class="icon-highlightPoint" style="margin-right: 8px;margin-top: -25px;"></span>';
- if (!item['tplj'] || 'null' == item['tplj']) {
- menu.addNewChild(item['pid'], index, item['id'], itemname, false, "null.png");
- } else {
- menu.addNewChild(item['pid'], index, item['id'], itemname, false, item['tplj']);
- }
- menu.setHref(item['id'], item['url'], '_self');
- if(item['tips']!=null&&(Menu_has_plugin_tips==""||Menu_has_plugin_tips=="null"||Menu_has_plugin_tips=="1")){
- menu.setTooltip(item['id'], item['tips']);
- }
- }
- }
- //初始化快捷菜單下拉
- for (var index in scmi) {
- var value = scmi[index]["members"];
- if (index != "menuRoot") {
- var menupid;
- var menuchilenum = 0;
- for (i in value) {
- var memberid = value[i]["memberId"];
- var havepermission = false;
- var memberid_ = memberid.replace(/#[0-9]+?#/, "");
- for (var j = 0; j < mia.length; j++) {
- if (memberid_ == mia[j]["id"]) {
- havepermission = true;
- break;
- }
- }
- if (havepermission) {
- if (menuPrefix == 'menuObj' && memberid_.indexOf("_search") == -1) {
- for (var ii = 0; ii < mia.length; ii++) {
- var item_ = mia[ii];
- if (memberid_ == item_['id']) {
- if (menuPrefix == 'menuObj' && memberid_.indexOf("_search") > 0) {
- /* 先去掉 "[搜索]" ,解决 norm 菜单条里的 菜单名带 "[搜索]" 的问题。Lin
- menu.addNewChild(scmi[index]["groupId"], 999, value[i]["memberId"], value[i]["name"] + '[搜索]', false, "null.png");
- */
- console.log(" + '[搜索]':5");
- menu.addNewChild(scmi[index]["groupId"], 999, value[i]["memberId"], value[i]["name"], false, "null.png");
- } else {
- menu.addNewChild(scmi[index]["groupId"], 999, value[i]["memberId"], value[i]["name"], false, "null.png");
- }
- menuchilenum++;
- if(item_['url'].indexOf("javascript")!=0){
- menu.setHref(value[i]["memberId"], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+item_['url']+"')", target);
- }else{
- menu.setHref(value[i]["memberId"], item_['url'], target);
- }
- //menu.setHref(value[i]["memberId"], item_["url"], target);
- break;
- }
- }
- } else {
- for (var ii = 0; ii < mi.length; ii++) {
- var item_ = mi[ii];
- if (memberid_ == item_['id']) {
- if (menuPrefix == 'menuObj' && memberid_.indexOf("_search") > 0) {
- /* 先去掉 "[搜索]" ,解决 norm 菜单条里的 菜单名带 "[搜索]" 的问题。Lin
- menu.addNewChild(scmi[index]["groupId"], 999, value[i]["memberId"], value[i]["name"] + '[搜索]', false, "null.png");
- */
- console.log(" + '[搜索]':6");
- menu.addNewChild(scmi[index]["groupId"], 999, value[i]["memberId"], value[i]["name"], false, "null.png");
- } else {
- menu.addNewChild(scmi[index]["groupId"], 999, value[i]["memberId"], value[i]["name"], false, "null.png");
- }
- menuchilenum++;
- if(item_['url'].indexOf("javascript")!=0){
- menu.setHref(value[i]["memberId"], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+item_['url']+"')", target);
- }else{
- menu.setHref(value[i]["memberId"], item_['url'], target);
- }
- // menu.setHref(value[i]["memberId"], item_["url"], target);
- break;
- }
- }
- }
- // menu.addNewChild(scmi[index]["groupId"], 999, value[i]["memberId"], value[i]["name"]);
- }
- }
- if (menuchilenum == 0) {
- menu.removeItem(scmi[index]["groupId"]);
- }
- }
- }
- // try {
- // // 编辑首页模板
- // for (var i = mi.length - 1; i >= 0; i--) {
- // item = mi[i];
- // if (undefined == item);
- // else {
- // if ('shortcutMenu' != item['id'] && 'editMenu' != item['id'] && menuRootName == item['pid'] && 'null' != item['tplj']) {
- // //console.log(item);
- // try {
- // menu.addNewSeparator(item['id']);
- // } catch (e) {
- // console.log(e);
- // }
- // break;
- // }
- // }
- // }
- // } catch (e) {
- // console.log(e)
- // }
- var n = 0;
- var jsonString = JSON.stringify(scmi);
- if (jsonString == "{}") {
- for (var i = 0; i < mi.length; i++) {
- var item = mi[i];
- if (undefined == item);
- else {
- if (menuRootName != item['id'] && 'null' == item['tplj']) {
- var tem = 0;
- for (var ii = 0; ii < mia.length; ii++) {
- var item2 = mia[ii];
- if (item2['pid'] == item['id']) {
- if (tem == 0) {
- menu.addNewSibling(menuRootName, item2['id'], item2['name'], false);
- tem = item2['id']
- } else {
- menu.addNewSibling(tem, item2['id'], item2['name'], false);
- tem = item2['id']
- }
- menuitem[n] = item2['id'];
- n++;
- if ('1' == item2['isLeaf']) {
- if ('editMenu' == item2['id']) {
- menu.setHref(item2['id'], item2['url'], '_self');
- } else {
- if(item2['url'].indexOf("javascript")!=0){
- menu.setHref(item2['id'], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+item2['url']+"')", target);
- }else{
- menu.setHref(item2['id'], item2['url'], target);
- }
- // menu.setHref(item2['id'], item2['url'], target);
- }
- }
- var pso = 0;
- for (var i3 = 0; i3 < mia.length; i3++) {
- if (tem != 0) {
- if (item2['id'] == mia[i3]['pid']) {
- menu.addNewChild(item2['id'], pso, mia[i3]['id'], mia[i3]['name']);
- pso++;
- if(mia[i3]['url'].indexOf("javascript")!=0){
- menu.setHref(mia[i3]['id'], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+mia[i3]['url']+"')", target);
- }else{
- menu.setHref(mia[i3]['id'], mia[i3]['url'], target);
- }
- // menu.setHref(mia[i3]['id'], mia[i3]['url'], target);
- }
- }
- }
- }
- }
- break;
- }
- }
- }
- }
- } catch (e) {
- console.log(e)
- }
- menuDiv.style.display = "inline-block";
- menuDiv.style.overflow = "hidden";
- if (menuPrefix.indexOf("menu") == 0) {
- menuDiv.style.width = menu_.width || "50%";
- if (scmi.menuRoot && !$.isEmptyObject(scmi.menuRoot.members)) {
- initHandle(menuDiv);
- menuDiv.style.minWidth = "100px";
- } else {
- menuDiv.style.width = "auto";
- }
- window.updateMenuSize = function () {
- // if (!$.isEmptyObject(scmi)) {
- // menuDiv.style.minWidth = "50px";
- // }
- if (menuDiv.childNodes.length>0&&menuDiv.childNodes[0].childNodes.length <= 1) {
- $(menuDiv).find("." + menuSepartorClass).hide();
- $(menuDiv).css({
- "width": "",
- "min-width": ""
- });
- } else {
- $(menuDiv).find("." + menuSepartorClass).show();
- }
- var chs = menuDiv.parentNode.children;
- for (var i = 0; i < chs.length; i++) {
- var ch = chs[i];
- if(ch.nodeName=="DIV"){
- if (ch == menuDiv)
- continue;
- if (ch.getAttribute("id").indexOf(recordVal4Menu.state.value) < 0) {
- ch.style.display = "none";
- }
- var s = ch.style;
- s.position = "absolute";
- s.top = "0";
- s.bottom = "0";
- s.right = "0";
- s.left = getElementWidth(menuDiv);
- }
-
- }
- }
- window.updateMenuSize();
- } else { }
- menu.attachEvent("onClick", function (id) {
- //console.log("click")
- if (id == 'shortcutMenu') {
- var ifrArr = document.getElementsByTagName('IFRAME');
- for (var aa = 0; aa < ifrArr.length; aa++) {
- var ifr = ifrArr[aa];
- if (ifr.getAttribute('oriSrc') != null) {
- ifr.src = ifr.getAttribute('oriSrc');
- }
- }
- };
- try {
- if (id == 'shortcutMenu') {
- if ('undefined' != wd.topWindow.gxhymWindow.SYBJCTRL.exitMB && wd.topWindow.gxhymWindow.SYBJCTRL.exitMB) {
- wd.topWindow.gxhymWindow.SYBJCTRL.exitMB();
- }
- };
- } catch (e) {
- console.log(e)
- }
- var n = 0;
- var selfpid;
- for (var k = 0; k < mi.length; k++) {
- if (mi[k]['id'] == id) {
- selfpid = mi[k]['pid']
- break;
- }
- }
- if (selfpid == menuRootName) {
- for (var k = 0; k < mi.length; k++) {
- var item = mi[k]
- //console.log(item)
- if ('shortcutMenu' != item['id'] && 'editMenu' != item['id'] && menuRootName == item['pid'] && !item['tplj']) {
- // menu.removeItem(mi[k]['id']+"xxx")
- }
- if (mi[k]['isRoot'] == '1' && mi[k]['id'] != menuRootName) {
- menu.removeItem(mi[k]['id'])
- }
- }
- if (menuitem.length > 0) {
- for (var j = 0; j < menuitem.length; j++) {
- //console.log(menuitem[j])
- menu.removeItem(menuitem[j]);
- };
- }
- menu.removeItem("more");
- //
- // for(var i=0;i<scmi.length;i++){
- // menu.removeItem(scmi[i].memberId)
- // }
- // createMenu(false)
- var currTopMenuCount = 0;
- var maxTopMenuCount = MenuSetting.maxTopMenuCount;
- // return
- var sim = 0;
- for (var i = 0; i < mia.length; i++) {
- var item = mia[i];
- if (id == "shortcutMenu") {
- if (!empnum) { //???????
- var empnum = true;
- for (var index in scmi) {
- var value = scmi[index]["members"];
- if (index == "menuRoot") {
- var menupid;
- //重新生成个人菜单
- for (var i in value) {
- if (!inMenuTree(value[i]["memberId"]) && "null" != value[i]["url"]) {
- continue
- };
- if (!menupid) {
- menu.addNewSibling(menuRootName, value[i]["memberId"], value[i]["name"], false);
- if(value[i]["url"].indexOf("javascript")!=0){
- menu.setHref(value[i]["memberId"], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+value[i]["url"]+"')", target);
- }else{
- menu.setHref(value[i]["memberId"], value[i]["url"], target);
- }
- // menu.setHref(value[i]["memberId"], value[i]["url"], target);
- menupid = value[i]["memberId"];
- currTopMenuCount++
- } else {
- if (currTopMenuCount == maxTopMenuCount - 1) {
- menu.addNewSibling(menupid, 'more', '更多');
- menu.addNewSibling(menupid, value[i]["memberId"], value[i]["name"], false);
- if(value[i]["url"].indexOf("javascript")!=0){
- menu.setHref(value[i]["memberId"], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+value[i]["url"]+"')", target);
- }else{
- menu.setHref(value[i]["memberId"], value[i]["url"], target);
- }
- // menu.setHref(value[i]["memberId"], value[i]["url"], target);
- menupid = value[i]["memberId"];
- currTopMenuCount++
- } else if (currTopMenuCount < maxTopMenuCount - 1) {
- menu.addNewSibling(menupid, value[i]["memberId"], value[i]["name"], false);
- if(value[i]["url"].indexOf("javascript")!=0){
- menu.setHref(value[i]["memberId"], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+value[i]["url"]+"')", target);
- }else{
- menu.setHref(value[i]["memberId"], value[i]["url"], target);
- }
- // menu.setHref(value[i]["memberId"], value[i]["url"], target);
- menupid = value[i]["memberId"];
- currTopMenuCount++
- } else {
- menu.addNewChild("more", 999, value[i]["memberId"], value[i]["name"]);
- menupid = value[i]["memberId"];
- currTopMenuCount++
- }
- }
- // if(currTopMenuCount==maxTopMenuCount-1){
- // menu.addNewSibling(currTopPid , 'more', '更多');
- // currTopPid = 'more';
- // index=0;
- // currTopMenuCount++;
- // if(!item['tplj']||'null'==item['tplj']){
- // menu.addNewChild(currTopPid, index , item['id'], item['name']);
- // }else{
- // menu.addNewChild(currTopPid, index , item['id'], item['name'], false, item['tplj']);
- // }
- // index++;
- // }else if(currTopMenuCount<maxTopMenuCount-1){//没超过最多项
- // if('wd' == item['id']){ currTopPid = null};
- // menu.addNewSibling(currTopPid , item['id'], item['name']);
- // currTopPid = item['id'];
- // index=0;
- // currTopMenuCount++;
- // }else{
- // if(!item['tplj']||'null'==item['tplj']){
- // menu.addNewChild(currTopPid, index , item['id'], item['name']);
- // }else{
- // menu.addNewChild(currTopPid, index , item['id'], item['name'], false, item['tplj']);
- // }
- // index++;
- // }
- //
- }
- }
- }
- for (var index in scmi) {
- var value = scmi[index]["members"];
- if (index != "menuRoot") {
- for (var i in value) {
- menu.addNewChild(value[i]["groupId"], 999, value[i]["memberId"], value[i]["name"]);
- if(value[i]["url"].indexOf("javascript")!=0){
- menu.setHref(value[i]["memberId"], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+value[i]["url"]+"')", target);
- }else{
- menu.setHref(value[i]["memberId"], value[i]["url"], target);
- }
- // menu.setHref(value[i]["memberId"], value[i]["url"], target);
- }
- }
- }
- }
- } else {
- if (id == item['pid']) {
- if (sim != 0) {
- if (currTopMenuCount == maxTopMenuCount - 1) {
- index = 0;
- menu.addNewSibling(sim, "more", "更多", false);
- sim = "more"
- menu.addNewChild("more", 999, item['id'], item['name']);
- index++;
- currTopMenuCount++
- } else if (currTopMenuCount < maxTopMenuCount - 1) {
- index = 0;
- menu.addNewSibling(sim, item['id'], item['name']);
- sim = item['id']
- currTopMenuCount++
- } else {
- menu.addNewChild("more", index, item['id'], item['name']);
- index++;
- currTopMenuCount++
- }
- } else {
- menu.addNewSibling(menuRootName, item['id'], item['name'], false);
- sim = item['id']
- }
- if ('1' == item['isLeaf']) {
- if ('editMenu' == item['id']) {
- menu.setHref(item['id'], item['url'], '_self');
- } else {
- // menu.setHref(item['id'], item['url'], target);
- if (item['url'].indexOf('ExLink:') == 0) {
- menu.setHref(item['id'], item['url'].substring(7), '_blank');
- } else {
- if(item['url'].indexOf("javascript")!=0){
- menu.setHref(item['id'], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+item['url']+"')", target);
- }else{
- menu.setHref(item['id'], item['url'], target);
- }
- // menu.setHref(item['id'], item['url'], target);
- }
- }
- }
- menuitem[n] = item['id'];
- n++;
- var psoi = 0;
- for (var ii = 0; ii < mia.length; ii++) {
- if (sim != 0) {
- if (item['id'] == mia[ii]['pid']) {
- menu.addNewChild(item['id'], psoi, mia[ii]['id'], mia[ii]['name']);
- psoi++;
- if (mia[ii]['url'].indexOf('ExLink:') == 0) {
- menu.setHref(mia[ii]['id'], mia[ii]['url'].substring(7), '_blank');
- } else {
- if(mia[ii]['url'].indexOf("javascript")!=0){
- menu.setHref(mia[ii]['id'], "javascript:wd.base.win2FitHeight('"+MenuSetting.target+"','"+mia[ii]['url']+"')", target);
- }else{
- menu.setHref(mia[ii]['id'], mia[ii]['url'], target);
- }
- // menu.setHref(mia[ii]['id'], mia[ii]['url'], target);
- }
- // menu.setHref(mia[ii]['id'], mia[ii]['url'], target);
- }
- }
- }
- }
- }
- }
- }
- });
- }
- //初始化完菜单之后判断是否隐藏按钮
- for (var menuKey in menus) {
- (function (menuName) {
- if (menuName == "menuObj")
- return;
- console.log(menuName)
- var menuDiv = document.getElementById(menuName + MenuSetting.bjId);
- menuDiv.style.display = "none";
- menuName = menuName == "startMenu" ? "searchMenu" : "startMenu";
- var flag = document.querySelectorAll("#" + menuName + MenuSetting.bjId + " .dhtmlxMenu_dhx_black_TopLevel_Item_Normal").length > 0;
- if (flag) {
- initSwitchBtn(menuDiv)
- } else {
- // recordVal4Menu.state.value = menuDiv.id.replace(/\d+/, "");
- recordVal4Menu.state.value = menuDiv.id.replace(MenuSetting.bjId, "");
- saveMenuInfo();
- }
- })(menuKey);
- }
- document.getElementById(recordVal4Menu.state.value + MenuSetting.bjId).style.display = "";
- }
- initMenuTotally()
- function getElementWidth(element) {
- var thisDisplay = element.style.display;
- element.style.display = thisDisplay == "none" ? "inline-block" : thisDisplay;
- var style = window.getComputedStyle(element);
- var width = parseFloat(style.marginLeft) + parseFloat(style.width) + parseFloat(style.marginRight);
- element.style.display = thisDisplay;
- return width;
- }
- function initSwitchBtn(menuDiv) {
- var b ;
- try{
- b = menus[recordVal4Menu.state.value].btn;
- }catch(e){
- b = menus[recordVal4Menu.state.value.replace(MenuSetting.bjId, "")].btn;
- }
- var btn = document.createElement("div");
- btn.className = b.className;
- btn.title = b.text;
- btn.innerHTML = " ";
- btn.onclick = function () {
- // console.log(recordVal4Menu.state.value + ":" + (recordVal4Menu.state.value == "searchMenu"))
- if (recordVal4Menu.state.value == "searchMenu") {
- recordVal4Menu.state.value = 'startMenu';
- } else {
- recordVal4Menu.state.value = "searchMenu";
- }
- // console.log(recordVal4Menu.state.value)
- saveMenuInfo();
- initMenuTotally();
- }
- var style = btn.style;
- style.height = "100%";
- style.cursor = 'pointer';
- //取代 style.float = "right";
- style.position = "absolute";
- style.right = "20px";
- menuDiv.appendChild(btn);
- }
- //初始化调整把手
- function initHandle(div_) {
- var handle = document.createElement("span");
- div_.appendChild(handle);
- handle.setAttribute("class", menuSepartorClass);
- handle.style.position = "absolute";
- handle.style.right = parseFloat(window.getComputedStyle(handle).borderWidth) * 2 + "px";
- middleHeight(handle);
- window.addEventListener("mousedown", function (e) {
- if (e.target == handle) {
- handle.isMouseDown = true;
- handle.startPoint = e.clientX;
- handle.parentWidth = parseFloat(window.getComputedStyle(handle.parentNode).width);
- handle.parentMin = parseFloat(window.getComputedStyle(handle.parentNode).minWidth);
- }
- });
- window.addEventListener("mouseup", function (e) {
- document.getElementsByClassName(menuSepartorClass)[0].classList.remove("menu-draggingSplit");
- if (handle && handle.isMouseDown) {
- // zhi.maxLeft.value = getMaxItemCount(handle.parentNode);
- // zhi.maxRight.value = getMaxItemCount("menuGroup");
- saveMenuInfo();
- initMenuTotally();
- }
- if (handle)
- handle.isMouseDown = false;
- if (handle)
- handle.startPoint = null;
- });
- window.addEventListener("mousemove", function (e) {
- if (handle && handle.isMouseDown && handle.startPoint != null) {
- // document.body.style.cursor = "pointer";
- // document.body.style = document.body.style + ";cursor: url(/zzfb_/theme/EasyUses/image/menu_separator.cur), default !important";
- // document.body.classList.add("menu-draggingSplit");
- document.getElementsByClassName(menuSepartorClass)[0].classList.add("menu-draggingSplit");
- var node = handle.parentNode;
- var srcWidth = handle.parentWidth,
- newWidth = srcWidth + (e.clientX - handle.startPoint);
- if (newWidth > 0 && (newWidth > handle.parentMin) && (newWidth < parseFloat(window.getComputedStyle(node.parentNode).width))) {
- if (srcWidth - newWidth != 0) {
- node.style.width = newWidth + "px";
- window.updateMenuSize && window.updateMenuSize();
- }
- } else {
- document.body.style.cursor = "not-allowed";
- }
- } else {
- document.body.style.cursor = "";
- }
- });
- }
- function updateMenuInfo() {
- var zhi = recordVal4Menu;
- zhi.indexs = zhi.indexs || {};
- var maxWidth = parseFloat(window.getComputedStyle(document.getElementById("menuObj" + MenuSetting.bjId)).width);
- zhi.width.value = maxWidth;
- for (var k in menus) {
- var mendiv = document.querySelector("#" + k + MenuSetting.bjId);
- if (mendiv.children.length > 0) {
- for (var _i = 0; _i < mendiv.children[0].children.length; _i++) {
- console.log(mendiv.children[0].children[_i])
- if (mendiv.children[0].children[_i].style.display == "none") {
- break;
- }
- zhi.indexs[k] = _i;
- }
- console.log(zhi)
- }
- }
- }
- function saveMenuInfo(callback) {
- updateMenuInfo();
- $.ajax({
- method: "post",
- url: "/service",
- data: {
- ssServ: 'insertRecords', // wdService: 'insertRecords',。Lin
- bjid: MenuSetting.bjId,
- zhi: JSON.stringify(recordVal4Menu)
- },
- async: false,
- success: function () {
- if (callback)
- callback();
- },
- error: function (e) {
- console.error("个人选值保存失败");
- // initMenuTotally();
- }
- });
- }
- function middleHeight(element) {
- if (element.style.position == "absolute") {
- var par = element.parentNode,
- parStyle = window.getComputedStyle(par),
- parHeight = parseFloat(parStyle.height),
- eStyle = window.getComputedStyle(element),
- eheight = parseFloat(eStyle.height),
- eBoeder = parseFloat(eStyle.borderTopWidth),
- top = (parHeight - eheight - eBoeder) / 2;
- element.style.top = top;
- }
- }
- //判断对象是否为空
- function is_empty(obj) {
- var hasOwnProperty = Object.prototype.hasOwnProperty;
- if (obj.length && obj.length > 0)
- return false;
- for (var key in obj) {
- if (hasOwnProperty.call(obj, key))
- return false;
- }
- return true;
- }
- //菜单点击事件
- function initialMenuPath() {
- wd.display.setHomeIconName("个人首页");
- }
- function change_menu_name(el){
- var div_menu_change={};
- div_menu_change.id=$(el).attr("wdId");
- div_menu_change.pid=$(el).attr("wdPid");
- div_menu_change.name=$(el).html();
- var is_has=false;
- if(recordVal4Menu.div_plugin_menus.length>0){
- recordVal4Menu.div_plugin_menus.forEach(function(menu_div){
- if(menu_div.pid==div_menu_change.id){
- is_has=true;
- }
- });
- }
- if(!is_has){
- recordVal4Menu.div_plugin_menus.push(div_menu_change);
- saveMenuInfo();
- initMenuTotally();
- console.log(div_menu_change);
- }
- // var id=$(el).parent().parent().parent().parent().parent().parent().attr('id');
- // var div =$("#"+id.replace("polygon_",""));
- // div.children().html($(el).html());
- }
- if(Menu_has_plugin_tips=="0"){
- $("div[name='plugin_tips']").parent().parent().parent(".menu-item").mousedown(function (e) {
- if (3 == e.which) {
- console.log($(this).html());
- console.log($(this).find("div[name='plugin_tips']").attr("wdTitle"));
- this.title = $(this).find("div[name='plugin_tips']").attr("wdTitle");
- }
- })
- $("div[name='plugin_tips']").parent().parent().parent(".menu-item").mouseleave(function (e) {
- this.title = "";
- })
- }
|