Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
易企天创
zui
提交
0c18c908
Z
zui
项目概览
易企天创
/
zui
12 个月 前同步成功
通知
6
Star
0
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
37
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Z
zui
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
37
Issue
37
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
0c18c908
编写于
8月 28, 2014
作者:
C
Catouse
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
* enhanced modal.js.
上级
403e22b9
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
32 addition
and
6 deletion
+32
-6
src/js/modal.js
src/js/modal.js
+32
-6
未找到文件。
src/js/modal.js
浏览文件 @
0c18c908
...
...
@@ -4,9 +4,13 @@
* ========================================================================
* Copyright 2011-2014 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* ========================================================================
* Updates in ZUI:
* 1. changed event namespace to *.zui.modal
* 2. added position option to ajust poisition of modal
* 3. added event 'escaping.bs.modal' with an param 'esc' to judge the esc key down
* ======================================================================== */
+
function
(
$
)
{
'
use strict
'
;
...
...
@@ -38,13 +42,24 @@
Modal
.
DEFAULTS
=
{
backdrop
:
true
,
keyboard
:
true
,
show
:
true
show
:
true
,
position
:
'
fit
'
// 'center' or '40px' or '10%'
}
Modal
.
prototype
.
toggle
=
function
(
_relatedTarget
)
{
return
this
.
isShown
?
this
.
hide
()
:
this
.
show
(
_relatedTarget
)
}
Modal
.
prototype
.
ajustPosition
=
function
(
position
)
{
position
=
position
||
this
.
options
.
position
;
if
(
!
position
)
return
;
var
$dialog
=
this
.
$element
.
find
(
'
.modal-dialog
'
);
var
half
=
Math
.
max
(
0
,
(
$
(
window
).
height
()
-
$dialog
.
outerHeight
())
/
2
);
var
pos
=
position
==
'
fit
'
?
(
half
*
2
/
3
)
:
(
position
==
'
center
'
?
half
:
that
.
options
.
position
);
$dialog
.
css
(
'
margin-top
'
,
pos
);
}
Modal
.
prototype
.
show
=
function
(
_relatedTarget
)
{
var
that
=
this
var
e
=
$
.
Event
(
'
show.zui.modal
'
,
{
relatedTarget
:
_relatedTarget
})
...
...
@@ -82,6 +97,8 @@
.
addClass
(
'
in
'
)
.
attr
(
'
aria-hidden
'
,
false
)
that
.
ajustPosition
();
that
.
enforceFocus
()
var
e
=
$
.
Event
(
'
shown.zui.modal
'
,
{
relatedTarget
:
_relatedTarget
})
...
...
@@ -138,11 +155,18 @@
Modal
.
prototype
.
escape
=
function
()
{
if
(
this
.
isShown
&&
this
.
options
.
keyboard
)
{
this
.
$element
.
on
(
'
keydown.dismiss.zui.modal
'
,
$
.
proxy
(
function
(
e
)
{
e
.
which
==
27
&&
this
.
hide
()
$
(
document
).
on
(
'
keydown.dismiss.zui.modal
'
,
$
.
proxy
(
function
(
e
)
{
if
(
e
.
which
==
27
)
{
var
et
=
$
.
Event
(
'
escaping.bs.modal
'
)
var
result
=
this
.
$element
.
triggerHandler
(
et
,
'
esc
'
)
if
(
result
!=
undefined
&&
(
!
result
))
return
this
.
hide
()
}
},
this
))
}
else
if
(
!
this
.
isShown
)
{
this
.
$element
.
off
(
'
keydown.dismiss.zui.modal
'
)
$
(
document
)
.
off
(
'
keydown.dismiss.zui.modal
'
)
}
}
...
...
@@ -272,12 +296,14 @@
// strip for ie7
$target
=
$
(
$this
.
attr
(
'
data-target
'
)
||
(
href
&&
href
.
replace
(
/.*
(?=
#
[^\s]
+$
)
/
,
''
)));
}
catch
(
ex
){
return
}
if
(
!
$target
.
length
)
return
;
var
option
=
$target
.
data
(
'
zui.modal
'
)
?
'
toggle
'
:
$
.
extend
({
remote
:
!
/#/
.
test
(
href
)
&&
href
},
$target
.
data
(),
$this
.
data
())
if
(
$this
.
is
(
'
a
'
))
e
.
preventDefault
()
$target
.
one
(
'
show.zui.modal
'
,
function
(
showEvent
)
{
if
(
showEvent
.
isDefaultPrevented
())
return
// only register focus restorer if modal will actually get shown
// only register focus restorer if modal will actually get shown
if
(
showEvent
.
isDefaultPrevented
())
return
$target
.
one
(
'
hidden.zui.modal
'
,
function
()
{
$this
.
is
(
'
:visible
'
)
&&
$this
.
trigger
(
'
focus
'
)
})
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录