最新赞助活动温馨提示:9.9元终身VIP,学生和没有工作的整站资源免费下载!
头像

jQuery切换登录与注册弹出窗口

来源:http://www.erdangjiade.com/ 二当家的 2015-05-18 08:19浏览(1716)

当点击页面中的登录或注册按钮时,将会弹出一个登录与注册弹出层,我们可以轻松的切换,这样用户体验会很好。

1、请不要问“在不在”之类的问题,有问题直接问!2、学生或暂时没有工作的童鞋,整站资源免费下载!3、¥9.9充值终身VIP会员,整站资源无任何限制下载!5、程序员加油,交流群:782128964 在线 充值

jQuery切换登录与注册弹出窗口
分类:表单代码 > 注册登录框 难易:中级
查看演示 下载资源: 143

关注微信号获取此Demo视频教程:

下载资源 下载积分: 30 积分

HTML

首先在页面上加登录和注册按钮。

<nav class="main_nav"> 
    <ul> 
        <li><a class="cd-signin" href="#0">登录</a></li> 
        <li><a class="cd-signup" href="#0">注册</a></li> 
    </ul> 
</nav>

接着建立模态窗口弹出层div.cd-user-modal,在弹出层中放置两个用于切换的链接ul.cd-switcher,然后放置登录和注册表单,分别对应div#cd-login和div#cd-signup。

<div class="cd-user-modal">  
    <div class="cd-user-modal-container"> 
        <ul class="cd-switcher"> 
            <li><a href="#0">用户登录</a></li> 
            <li><a href="#0">注册新用户</a></li> 
        </ul> 
 
        <div id="cd-login">  
            <form class="cd-form"> 
                <!-- 登录表单 --> 
            </form> 
        </div> 
 
        <div id="cd-signup">  
            <form class="cd-form"> 
                <!-- 注册表单 --> 
            </form> 
        </div>         
    </div> 
</div>

jQuery

弹出层的弹出和关闭效果由jquery控制样式.is-visible的调用,切换表单是由jQuery控制演示.is-selected的调用。

$(function($) {
    var $form_modal = $('.cd-user-modal'),
    $form_login = $form_modal.find('#cd-login'),
    $form_signup = $form_modal.find('#cd-signup'),
    $form_modal_tab = $('.cd-switcher'),
    $tab_login = $form_modal_tab.children('li').eq(0).children('a'),
    $tab_signup = $form_modal_tab.children('li').eq(1).children('a'),
    $main_nav = $('.main_nav');

    //弹出窗口 
    $main_nav.on('click',
    function(event) {

        if ($(event.target).is($main_nav)) {
            // on mobile open the submenu 
            $(this).children('ul').toggleClass('is-visible');
        } else {
            // on mobile close submenu 
            $main_nav.children('ul').removeClass('is-visible');
            //show modal layer 
            $form_modal.addClass('is-visible');
            //show the selected form 
            ($(event.target).is('.cd-signup')) ? signup_selected() : login_selected();
        }

    });

    //关闭弹出窗口 
    $('.cd-user-modal').on('click',
    function(event) {
        if ($(event.target).is($form_modal) || $(event.target).is('.cd-close-form')) {
            $form_modal.removeClass('is-visible');
        }
    });
    //使用Esc键关闭弹出窗口 
    $(document).keyup(function(event) {
        if (event.which == '27') {
            $form_modal.removeClass('is-visible');
        }
    });

    //切换表单 
    $form_modal_tab.on('click',
    function(event) {
        event.preventDefault(); ($(event.target).is($tab_login)) ? login_selected() : signup_selected();
    });

    function login_selected() {
        $form_login.addClass('is-selected');
        $form_signup.removeClass('is-selected');
        $tab_login.addClass('selected');
        $tab_signup.removeClass('selected');
        $(".cd-switcher").children("li").removeClass("on");
        $(".cd-switcher").children("li").eq(0).addClass("on");
    }

    function signup_selected() {
        $form_login.removeClass('is-selected');
        $form_signup.addClass('is-selected');
        $tab_login.removeClass('selected');
        $tab_signup.addClass('selected');
        $(".cd-switcher").children("li").removeClass("on");
        $(".cd-switcher").children("li").eq(1).addClass("on");
    }

});

该实例在手机等移动设备上也有很好的展示效果,由于运用了css3效果,所以如果您使用IE浏览器,请将版本升级到IE9以上,那样展示效果会更好。

声明:本文为原创文章,如需转载,请注明来源erdangjiade.com并保留原文链接:https://www.erdangjiade.com/js/124.html
评论1
头像

友情提示:垃圾评论一律封号 最新福利:领取阿里云限量2000通用代金券

  • 头像 沙发
    10-03 09:16
    254122
    我觉得二当家多一些嵌套的模板挺好
1 2