Toggle navigation
Toggle navigation
This project
Loading...
Sign in
monitor_v3
/
hg-monitor-web
·
Commits
Go to a project
GitLab
Go to group
Project
Activity
Files
Commits
Pipelines
0
Builds
0
Graphs
Milestones
Issues
0
Merge Requests
0
Members
Labels
Wiki
Forks
Network
Create a new issue
Download as
Email Patches
Plain Diff
Browse Files
Authored by
鲁尚清
3 years ago
Commit
7e36147b3c2df15b40543b9d87203a66f544c2d2
1 parent
1c11ea70
菜单增加点击事件操作记录
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
105 additions
and
7 deletions
hg-monitor-web-base/src/main/resources/static/src/pageTips.js
hg-monitor-web-base/src/main/resources/static/src/pageTips.js
View file @
7e36147
...
...
@@ -8,7 +8,8 @@ layui.define(['element', 'admin'], function (exports) {
data
:
{
contextmenuTips
:
null
,
contextmenus
:
[],
classNams
:
[]
classNams
:
[],
handleLog
:
[]
//lsq 页面点击操作集
},
getCurrentHash
:
function
()
{
return
window
.
location
.
hash
;
...
...
@@ -80,12 +81,111 @@ layui.define(['element', 'admin'], function (exports) {
* 鼠标点击事件
*/
bindClickEvent
(){
let
that
=
this
;
var
eventKeys
=
[
'a'
,
'button'
,
'[data-bizid]'
,
'.layui-table-link'
];
// 菜单点击
$
(
'#LAY-system-side-menu li a'
).
click
(
function
(
e
){
console
.
log
(
$
(
this
).
text
());
e
.
preventDefault
();
});
if
(
!
$
(
'#LAY-system-side-menu li a'
).
hasClass
(
"on_fn"
)){
$
(
'#LAY-system-side-menu li a'
).
on
(
'click'
,(
function
(
e
){
e
.
preventDefault
();
//start lsq 元素鼠标点击事件操作 2022-08-11
//绑定事件时增加一个class防止多次绑定事件
$
(
this
).
addClass
(
"on_fn"
);
// 获取当前点击的菜单 2022-08-11
if
(
$
(
this
).
parent
(
'li'
).
length
>
0
){
//如果菜单是第一级,则清空菜单数组,重新插入
that
.
data
.
handleLog
=
[];
}
that
.
pushArrNoRepeat
(
$
(
this
),
1
);
}));
}
//lsq 给页面的元素绑定点击事件 2022-08-11
setTimeout
(
function
(){
that
.
bindElemClickEvent
();
},
500
)
},
/**
* @desc 点击元素插入数组时的处理
* @author lsq
* @date 2022-08-11
* @param thisObj 为点击的元素
* @param flg 1菜单
*/
pushArrNoRepeat
(
thisObj
,
flg
)
{
let
that
=
this
;
// 获取当前元素名称正则表达式
var
reg
=
sessionStorage
.
getItem
(
'regular'
);
// 获取当前点击的元素的内容
let
text
=
thisObj
.
text
()?
thisObj
.
text
().
trim
().
replace
(
reg
,
""
):
''
;
// 获取当前点击的元素的lay-href-type值
let
menuType
=
thisObj
.
attr
(
'lay-href-type'
)?
thisObj
.
attr
(
'lay-href-type'
):
''
;
// 获取当前点击的菜单的路由地址
let
layHref
=
thisObj
.
attr
(
'lay-href'
)?
thisObj
.
attr
(
'lay-href'
):
''
;
let
eleObj
=
{
text
:
text
,
menuType
:
menuType
,
layHref
:
layHref
}
//数组中无当前点击的元素时再将当前点击元素加入到数组中
let
textArr
=
[];
that
.
data
.
handleLog
.
map
(
item
=>
{
textArr
.
push
(
item
.
text
)
})
if
(
textArr
.
indexOf
(
text
)
==-
1
){
if
(
flg
&&
!
layHref
){
// 如果当前点击的菜单元素没有路由地址则删除
that
.
data
.
handleLog
.
splice
(
1
)
;
}
that
.
data
.
handleLog
.
push
(
eleObj
)
}
console
.
log
(
text
,
that
.
data
.
handleLog
);
},
/**
* 页面其他元素绑定事件
* @author lsq
* @date 2022-08-11
*/
clickEventHandle
(
thisObj
)
{
let
that
=
this
;
//绑定事件时增加一个class防止多次绑定事件
thisObj
.
addClass
(
"on_fn"
);
that
.
pushArrNoRepeat
(
thisObj
);
// 把点击的元素按顺序展示
let
handleStr
=
''
;
let
menuStrArr
=
[];
let
menuStrArrSecond
=
[];
that
.
data
.
handleLog
.
map
(
item
=>
{
if
(
item
.
menuType
){
menuStrArr
.
push
(
item
.
text
)
}
else
{
menuStrArrSecond
.
push
(
item
.
text
)
}
})
if
(
menuStrArr
.
length
>
0
){
handleStr
=
menuStrArr
.
join
(
'->'
);
}
if
(
menuStrArrSecond
.
length
>
0
){
handleStr
+=
'->'
+
menuStrArrSecond
.
join
(
','
);
}
console
.
log
(
"abc"
,
handleStr
)
},
/**
* 页面其他元素绑定事件
* @author lsq
* @date 2022-08-11
*/
bindElemClickEvent
()
{
let
that
=
this
;
var
eventKeys
=
[
'button'
,
'[data-bizid]'
,
'.layui-table-link'
];
eventKeys
.
map
(
item
=>
{
if
(
!
$
(
item
).
hasClass
(
"on_fn"
)){
$
(
item
).
on
(
'click'
,(
function
(
e
){
e
.
preventDefault
();
that
.
clickEventHandle
(
$
(
this
))
}))
}
})
},
/**
* 绑定鼠标右键事件
...
...
@@ -93,7 +193,6 @@ layui.define(['element', 'admin'], function (exports) {
bindContextMenuEvent
()
{
var
that
=
this
;
var
contextmenus
=
that
.
data
.
contextmenus
;
var
bindContextEvent
=
function
(
selector
,
index
)
{
var
el
=
$
(
selector
);
...
...
@@ -163,7 +262,6 @@ layui.define(['element', 'admin'], function (exports) {
}
}
})
// 点击关闭所有tips
$
(
document
).
on
(
'click'
,
function
(
event
)
{
layer
.
closeAll
(
'tips'
);
...
...
Please
register
or
login
to post a comment