flavr—超级漂亮的jQuery扁平弹出对话框

所属分类:UI-弹出层

 60042  617  查看评论 (80)
flavr—超级漂亮的jQuery扁平弹出对话框 ie兼容8

flavr特点

  1. 清洁和现代平面设计
  2. 充分响应
  3. 轻量级的、功能强大的
  4. 基于Bootstrap 开发
  5. CSS3动画在现代浏览器
  6. jQuery提供动力
  7. 跨浏览器支持


调用示例

确认对话框

new $.flavr({
    content     : 'Press a button',
    dialog      : 'confirm',
    onConfirm   : function( $container ){
        alert('You pressed Confirm!');
        return false;
    },
    onCancel    : function( $container ){
        alert('You pressed Cancel');
    }
});

提示对话框

new $.flavr({
    content     : 'Please enter your name',
    dialog      : 'prompt',
    prompt      : { value: 'Harry Potter', addClass: 'prompt-name' },
    onConfirm   : function( $container, $prompt ){
        alert('Howdy ' + $prompt.val() + ' !');
        return false;
    }
});

表单对话框

var html =  
'   <div class="form-row">' +
'       <input type="text" name="username" ' +
'       placeholder="Username" />' +
'   </div>' +
'   <div class="form-row">' +
'       <input type="password" name="password" ' +
'       placeholder="Password" />' +
'   </div>' +
'   <div class="form-row">' +
'       <input type="checkbox" name="remember" ' +
'       id="check"/>' +
'       <label for="check">Remember me</label>' +
'   </div>';
 
new $.flavr({
    title       : 'Form',
    content     : 'Please login to continue',
    dialog      : 'form',
    form        : { content: html, addClass: 'form-html' },
    onSubmit    : function( $container, $form ){
        alert( $form.serialize() );        
        return false;
    }
});

还有其他一些用法在页面源代码中写得很详细,我就不一一列举了!

当时只是看了一下觉得很简单就直接上传了,看了评论说js很多,我疏忽了大家对一些js插件不认识。谢谢大家的提醒现在我补充一下demo中那些是必须的,那些是按自己需要加载的。

<!-- Google字体,根据需要更换国内的在线字体服务或者用系统默认的字体,非必须加载项 -->
    <link rel="stylesheet" type="text/css" href="./index_files/lato.css">
    <!-- DEMO PAGE CSS -->
    <!-- bootstrap框架 -->
    <link rel="stylesheet" type="text/css" href="./index_files/bootstrap.min.css">
    <!-- fontawesome是一个免费的图标字体,根据自己的项目需要加载(现在网页基本上用这用图标字体了,代替图片,加快网页速度,节省流量等一系列优点,不知道的朋友请百度)-->
    <link rel="stylesheet" type="text/css" href="./index_files/fontawesome.css">
    <!-- 下面两个css为demo样式,demo网页背景相关的样式,个人项目中无需引入 -->
    <link rel="stylesheet" type="text/css" href="./index_files/default.css">
    <link rel="stylesheet" type="text/css" href="./index_files/style.css">
    <!-- END DEMO PAGE CSS -->
    <!-- flavr CSS 下面是本插件的核心css文件,必须加载-->
    <!-- animate.css 是github上很受欢迎的css3动画类库,本插件的所有动画都是靠animate.css实现的,如果你不需要弹出层有动画效果的话也可以不用加载 -->
    <link rel="stylesheet" type="text/css" href="./index_files/animate.css">
    <!-- 插件样式,必须加载 -->
    <link rel="stylesheet" type="text/css" href="./index_files/flavr.css">
    <!-- END flavr CSS -->

上面是css的引入问题,下面是js的引入

<!-- jQuery和bootstrap必须加载,这个是弹窗的基本提供 -->
<script type="text/javascript" src="./index_files/jquery.min.js"></script>
<script type="text/javascript" src="./index_files/bootstrap.min.js"></script>
<!-- 下面两个是点击demo按钮时触发的效果,不需要加载 -->
<script type="text/javascript" src="./index_files/jquery.browser.js"></script>
<script type="text/javascript" src="./index_files/livedemo.js"></script>
<!-- 下面插件是代码高亮插件,只是给大家在demo页面上看到更直观的代码而已,实际项目中无需加载 -->
<script type="text/javascript" src="./index_files/highlight.pack.js"></script>
<script>hljs.initHighlightingOnLoad();//初始化代码高亮</script>
<!-- BEGIN flavr SCRIPT -->
<!-- 下面是插件核心代码,必须加载 -->
<script type="text/javascript" src="./index_files/flavr.min.js"></script>

<!-- END flavr SCRIPT -->

页面中最底下的代码解释:

<script type="text/javascript">
    $(document).ready(function(){
        
        $('.livedemo').livedemo(); //demo按钮点击时事件      
        
        $('.footer .socials a').on('mouseenter', function(){
            var animationEnd = 'webkitAnimationEnd oanimationend msAnimationEnd animationend';
            $(this).addClass('swing animated').bind( animationEnd, function(){
                $(this).removeClass('swing animated');
            });            
        });
        
        $('.demo-block .demo-actions .btn-demo').on('click', function(e){            
            e.preventDefault();
        });
        
        /**
         * 下面是每个对话框实例化的方法,例如第一个最简单的对话框(一点点解释吧0.0):
         * $('#demo-alert .demo-actions .btn-demo').on('click', function(){            
                new $.flavr('Hello World!');        
            });


            $('#demo-alert .demo-actions .btn-demo') jQuery获取一个class名为.btn-demo的按钮,前面两个实际是缩小范围获取这个按钮
            真正实例化flavr是这段代码:new $.flavr('Hello World!');(你可以建立一个测试页面把hello word 改为其他的字符,这样你能更直观理解这个插件)

            下面的代码分别对应了每个实例的弹出框的方法,大家可以对应着写

            之前是我疏忽了大家可能看不懂的原因,现在我大致写了一些,如果大家对jQuery、bootstrap、 animate.css不知道的请百度吧0.0
            

         */
        /*  -------------------------------------------------------------------------------
                Simple Alert
            ------------------------------------------------------------------------------- */  
            $('#demo-alert .demo-actions .btn-demo').on('click', function(){            
                new $.flavr('Hello World!');        
            });

        .........
</script>

好了,大家需要知道的引入js、css问题已经跟大家做了一个详细的注释,希望对大家有帮助。对于兼容性问题,这个我就不做解释了,后续我会看大家评论关注什么,我会尽量解释,对之前造成困扰的童鞋非常sorry~

相关插件-弹出层

20种弹出层,弹窗 jQuery+CSS3 多功能弹出层插件v2.0.1

弹窗 jQuery+CSS3 多功能弹出层插件v2.0.1这是升级版
  弹出层
 27104  259

悬浮九宫格菜单jQuery插件

悬浮九宫格菜单jQuery插件
  弹出层
 17759  98

jQuery模态框插件jquery.my-modal(原创)

基于jQuery开发的一个模态框插件
  弹出层
 6191  18

easyDialog 简单、实用的弹出层组件

easyDialog没有模板机制,只负责逻辑层的弹出效果,至于内容(消息框、表单、图片等)该如何呈现,easyDialog都不管,内容属于业务层的东西,业务需求是千变万化的,如果逻辑和业务结合很紧密,那么可移植性和可扩展性将大大降低。
  弹出层
 21196  91

讨论这个项目(80)回答他人问题或分享插件使用方法奖励jQ币

    ? 颜颜颜颜颜颜大侠 0
    2017/11/7 16:48:39
    jade-like stone? 0
    2017/10/12 1:43:05
    龙阳。 0
    2017/8/5 13:57:47
    咚!!! 0
    2017/7/31 11:10:07
    楼主,我是个前端新手,不太会用这个,照着你说的 做了,但是弹不出来呢!
        咚!!!0
        2017/7/31 11:12:46

          弹出是这样的   

    回复
    7334309 0
    2017/6/23 14:10:14
    楼主 这个插件怎么把按钮改成中文啊?? 求教
        p0o9o9p00
        2017/6/28 13:29:09

        这个自己研究下啊,我是在flavr.min.js中改的,都有对应的按钮,可能有的按钮还有其他地方需要改,自己试着改改看

    回复
    概念奇偶 0
    2017/6/12 15:26:05

    这个东西的对话框 为什么卡不住线程啊 并不能替代alert啊

    回复
    淡烟??墨色?? 0
    2017/6/12 11:09:13

    视觉效果不错,但按钮文字是英文的,我想改中文,看源码就一行 改都改不了,抓狂

        73343090
        2017/6/23 14:08:43

        楼主解决这问题了吗??怎么改中文?

    回复
    0
    2017/6/7 14:43:16
    为什么这么多作品都是要JQB呢  这东西我们没有难道不知道吗 回复
    恐龙蛋 0
    2017/6/5 10:52:00
    木头人 0
    2017/4/15 8:44:02
取消回复