锁屏效果,也就是将屏幕置于模态,不允许用户触发任何动作,只能解除锁定后才能继续使用,jQueryUI的dialog有模态对话框,这一点不难做到。那么,首先需要在页面中添加一个div层,用于做模态的层:
Html代码
其对应的CSS比较简单,主要设置一下z-index属性,值设置的很大即可,就能达到覆盖其余元素的效果,加上opacity淡化一下背景:
Css代码
- #overlay{
- height:100%;
- min-width:1280px;
- width:100%;
- position:absolute;
- left:0px;
- top:0px;
-
- opacity:0.7;
- z-index:100;
- }
这样就有了一个覆盖页面之上的层,显示效果为:
下面是添加解除锁定的部分,我们模仿iphone解锁效果,那么需要添加一下:
Html代码
-
- 滑动解除锁定
A rounded rectangular box with a button image on the left, giving a prompt message, it is not difficult:
Css code
- #slide{
- position:absolute;
- top:75%;
- width:52%;
- left:24%;
- height:86px;
- border-radius:18px;
- border:1px solid #2F368F;
- border- bottom:1px groovy #2F368F;
- z-index:101;
- background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0, #2F368F ),color-stop(1, #77D1F6));
- opacity:0.9;
- }
The z-index set here is larger than The modal layer is large so that we can control it. There is not much to say.
Css code
- #slider{
- float:left;
- position:relative;
- cursor:pointer;
- height:44px;
- background: url(../images/arrow.png) no-repeat;
- border- radius:16px;
- margin:-5px;
- text-align:center;
- width: 146px;
} -
-
Images are used in the slider, so the effect is better. The width of the rectangular frame is consistent with the slider image setting, and margins can be fine-tuned on their own. The following is the key text area. The effect used here is currently only supported by the webkit kernel, which means that FF does not support this effect for the time being.
Css code
#text{
height:50px; -
width:70%; -
float:left; -
padding-top:14px; -
font-family:"Microsoft Yahei"; -
font-size:44px; -
font-weight:100; -
text-align:center; -
vertical-align: middle; -
background: -webkit-gradient(linear ,left top,right top,color-stop(0, #4d4d4d),color-stop(0.4, #4d4d4d),color-stop(0.5, white),color-stop(0.6, #4d4d4d),color-stop( 1, #4d4d4d)); -
-webkit-background-clip: text; -
-webkit-text-fill-color: transparent; -
-webkit-animation: slidetounlock 5s infinite; 🎜> -
Css code -
-
@-webkit-keyframes slidetounlock { -
0% {background-position: -200px 0;}
100%{background-position: 200px 0;}
}
The final effect we simulated is:
The dynamic highlighting part of the text in the picture is the part that other kernels do not support for the time being. In this way, our effect is completed. At this time, it is all static. Nothing can be done, we use jqueryUI's draggable to add dynamic effects:
Js code
- $(function() {
- var slideWidth=$("#slide").width();
- $("#slider").draggable({
- axis: 'x',
- containment: 'parent',
- drag: function(event, ui) {
- if (ui.position.left > slideWidth*0.7) {
- // do nothing
- }
- },
- stop: function(event, ui) {
- if (ui.position.left < slideWidth*0.7) {
- $(this).animate({left: 0});
- }
- }
- }); 🎜>
} ); -
-
We dynamically obtain the set slide width, then apply the draggable method, set the horizontal drag, and when the drag distance reaches 70% of the rectangle length, the modal layer and the slide The block disappears and is restored to the page. Then we have completed adding the lock screen effect to the page. - Finally, the source code is attached, I hope it will be useful to users.
-
backend.rar (151.8 KB)
-
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn