ys_confirmation.css
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<code>.ys-confirmation{</code>
<code> </code><code>position</code><code>:</code><code>fixed</code><code>;</code>
<code> </code><code>left</code><code>:</code><code>0</code><code>;</code>
<code> </code><code>right</code><code>:</code><code>0</code><code>;</code>
<code> </code><code>top</code><code>:</code><code>0</code><code>;</code>
<code> </code><code>bottom</code><code>:</code><code>0</code><code>;</code>
<code> </code><code>display</code><code>:</code><code>none</code><code>;</code>
<code> </code><code>background-color</code><code>:rgba(</code><code>0</code><code>,</code><code>0</code><code>,</code><code>0</code><code>,</code><code>0.4</code><code>);</code>
<code> </code><code>z-index</code><code>: </code><code>99999</code><code>;</code>
<code>}</code>
<code>.ys-confirmation .ys-confirmation-content{</code>
<code> </code><code>position</code><code>:</code><code>absolute</code><code>;</code>
<code> </code><code>left</code><code>:</code><code>30px</code><code>;</code>
<code> </code><code>right</code><code>:</code><code>30px</code><code>;</code>
<code> </code><code>top</code><code>:</code><code>50%</code><code>;</code>
<code> </code><code>display</code><code>:</code><code>block</code><code>;</code>
<code> </code><code>background-color</code><code>:</code><code>#fff</code><code>;</code>
<code> </code><code>margin</code><code>:</code><code>auto</code><code>;</code>
<code> </code><code>border-radius: </code><code>8px</code><code>;</code>
<code> </code><code>padding-bottom</code><code>:</code><code>51px</code><code>;</code>
<code> </code><code>box-sizing: border-box;</code>
<code>.ys-confirmation .ys-confirmation-content .ys-confirmation-message{</code>
<code> </code><code>color</code><code>:</code><code>#222</code><code>;</code>
<code> </code><code>line-height</code><code>: </code><code>20px</code><code>;</code>
<code> </code><code>font-size</code><code>:</code><code>14px</code><code>;</code>
<code> </code><code>text-align</code><code>: </code><code>center</code><code>;</code>
<code> </code><code>padding</code><code>:</code><code>25px</code> <code>15px</code><code>;</code>
<code>.ys-confirmation .ys-confirmation-content .ys-confirmation-btn-group{</code>
<code> </code><code>width</code><code>:</code><code>100%</code><code>;</code>
<code> </code><code>height</code><code>:</code><code>51px</code><code>;</code>
<code> </code><code>border-top</code><code>:</code><code>1px</code> <code>solid</code> <code>#e5e5e5</code><code>;</code>
<code>.ys-confirmation .ys-confirmation-content .ys-confirmation-btn-group a{</code>
<code> </code><code>width</code><code>:</code><code>50%</code><code>;</code>
<code> </code><code>height</code><code>:</code><code>50px</code><code>;</code>
<code> </code><code>line-height</code><code>: </code><code>50px</code><code>;</code>
<code> </code><code>font-size</code><code>:</code><code>17px</code><code>;</code>
<code> </code><code>color</code><code>:</code><code>#ff7920</code><code>;</code>
<code>.ys-confirmation .ys-confirmation-content .ys-confirmation-btn-group a.ys-confirmation-cancel-btn{</code>
<code>.ys-confirmation .ys-confirmation-content .ys-confirmation-btn-group a.ys-confirmation-ok-btn{</code>
<code> </code><code>border-left</code><code>:</code><code>1px</code> <code>solid</code> <code>#e5e5e5</code><code>;</code>
<code> </code><code>font-weight</code><code>: </code><code>bold</code><code>;</code>
ys_confirmation.js
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
<code>(</code><code>function</code><code>($){</code>
<code> </code><code>var</code> <code>container = </code><code>null</code><code>;</code>
<code> </code><code>var</code> <code>currentCallback = </code><code>null</code><code>;</code>
<code> </code><code>var</code> <code>html = </code><code>"<div class='ys-confirmation'> "</code><code>+</code>
<code> </code><code>" <div class='ys-confirmation-content'> "</code><code>+</code>
<code> </code><code>" <div class='ys-confirmation-message'></div>"</code><code>+</code>
<code> </code><code>" <div class='ys-confirmation-btn-group'> "</code><code>+</code>
<code> </code><code>" <a class='ys-confirmation-cancel-btn'>取消</a> "</code><code>+</code>
<code> </code><code>" <a class='ys-confirmation-ok-btn'>确定</a> "</code><code>+</code>
<code> </code><code>" </div> "</code><code>+</code>
<code> </code><code>" </div> "</code><code>+</code>
<code> </code><code>"</div> "</code><code>;</code>
<code> </code><code>function</code> <code>render(){</code>
<code> </code><code>container = $(html).appendTo(</code><code>"body"</code><code>);</code>
<code> </code><code>}</code>
<code> </code><code>function</code> <code>show(message,callback){</code>
<code> </code><code>currentCallback = callback;</code>
<code> </code><code>$(container).find(</code><code>".ys-confirmation-message"</code><code>).html(message);</code>
<code> </code><code>$(container).css(</code><code>"visibility"</code><code>,</code><code>"hidden"</code><code>);</code>
<code> </code><code>$(container).show();</code>
<code> </code><code>var</code> <code>popupContentHeight = parseInt($(container).find(</code><code>".ys-confirmation-content"</code><code>).css(</code><code>"height"</code><code>));</code>
<code> </code><code>$(container).find(</code><code>".ys-confirmation-content"</code><code>).css({</code>
<code> </code><code>"margin-top"</code><code>:(-1)*popupContentHeight/2+</code><code>"px"</code>
<code> </code><code>});</code>
<code> </code><code>$(container).css(</code><code>"visibility"</code><code>,</code><code>"initial"</code><code>);</code>
<code> </code><code>function</code> <code>hide(){</code>
<code> </code><code>$(container).hide();</code>
<code> </code><code>currentCallback = </code><code>null</code><code>;</code>
<code> </code><code>function</code> <code>bindEvents(){</code>
<code> </code><code>container.on(</code><code>"touchend"</code><code>,</code><code>".ys-confirmation-cancel-btn"</code><code>,</code><code>function</code><code>(e){</code>
<code> </code><code>e.stopPropagation();</code>
<code> </code><code>e.preventDefault();</code>
<code> </code><code>hide();</code>
<code> </code><code>container.on(</code><code>"touchend"</code><code>,</code><code>".ys-confirmation-ok-btn"</code><code>,</code><code>function</code><code>(e){</code>
<code> </code><code>currentCallback();</code>
<code> </code><code>var</code> <code>initialized = </code><code>false</code><code>;</code>
<code> </code><code>function</code> <code>init(){</code>
<code> </code><code>if</code><code>(initialized){</code>
<code> </code><code>return</code><code>;</code>
<code> </code><code>}</code>
<code> </code><code>initialized = </code><code>true</code><code>;</code>
<code> </code><code>render();</code>
<code> </code><code>bindEvents();</code>
<code> </code><code>function</code> <code>showConfirmation(message,callback){</code>
<code> </code><code>init();</code>
<code> </code><code>show(message,callback);</code>
<code> </code><code>var</code> <code>ConfirmationWidget = {};</code>
<code> </code><code>ConfirmationWidget.showConfirmation=showConfirmation;</code>
<code> </code><code>window.ConfirmationWidget = ConfirmationWidget;</code>
<code>})(jQuery);</code>
component.html
<code><!DOCTYPE html></code>
<code><</code><code>html</code><code>></code>
<code><</code><code>head</code> <code>lang</code><code>=</code><code>"en"</code><code>></code>
<code> </code><code><</code><code>meta</code> <code>charset</code><code>=</code><code>"UTF-8"</code><code>></code>
<code> </code><code><</code><code>title</code><code>></</code><code>title</code><code>></code>
<code> </code><code><</code><code>meta</code> <code>name</code><code>=</code><code>"viewport"</code> <code>content</code><code>=</code><code>"width=device-width, initial-scale=1, maximum-scale=1.0, user-scalable=0"</code><code>></code>
<code> </code><code><</code><code>link</code> <code>rel</code><code>=</code><code>"stylesheet"</code> <code>href</code><code>=</code><code>"static/css/common/ys_confirmation.css"</code><code>></code>
<code> </code><code><</code><code>script</code> <code>src</code><code>=</code><code>"static/js/vendor/jquery-2.1.3.min.js"</code><code>></</code><code>script</code><code>></code>
<code> </code><code><</code><code>script</code> <code>src</code><code>=</code><code>"static/js/common/ys_confirmation.js"</code><code>></</code><code>script</code><code>></code>
<code></</code><code>head</code><code>></code>
<code><</code><code>body</code><code>></code>
<code> </code><code><</code><code>input</code> <code>id</code><code>=</code><code>"confirm-btn"</code> <code>type</code><code>=</code><code>"button"</code> <code>value</code><code>=</code><code>"确認"</code><code>/></code>
<code><</code><code>script</code><code>></code>
<code> </code><code>$("#confirm-btn").click(function(e){</code>
<code> </code><code>e.stopPropagation();</code>
<code> </code><code>e.preventDefault();</code>
<code> </code><code>ConfirmationWidget.showConfirmation("确認送出?",function(){</code>
<code> </code><code>alert("送出");</code>
<code> </code><code>});</code>
<code></</code><code>script</code><code>></code>
<code></</code><code>body</code><code>></code>
<code></</code><code>html</code><code>></code>
<a href="http://s4.51cto.com/wyfs02/M02/86/8F/wKiom1fD52-xoHpSAAXQ4GWV1aU462.jpg" target="_blank"></a>
版權聲明:原創作品,如需轉載,請注明出處。否則将追究法律責任
本文轉自 antlove 51CTO部落格,原文連結:http://blog.51cto.com/antlove/1843954