• 技术文章 >web前端 >js教程

    基于BootStarp的Dailog_javascript技巧

    2016-05-16 15:03:25原创633
    BootStrip简介

    Bootstrap,来自 Twitter,是目前很受欢迎的前端框架。

    Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加快捷。 它由Twitter的设计师Mark Otto和Jacob Thornton合作开发,是一个CSS/HTML框架。

    Bootstrap提供了优雅的HTML和CSS规范,它即是由动态CSS语言Less写成。Bootstrap一经推出后颇受欢迎,一直是GitHub上的热门开源项目,包括NASA的MSNBC(微软全国广播公司)的Breaking News都使用了该项目。 国内一些移动开发者较为熟悉的框架,如WeX5前端开源框架等,也是基于Bootstrap源码进行性能优化而来。

    1.1. 帮助文档关键字

    boostrap模态框oaoDailog

    1.2. 使用场景

    当网页上点击某个按钮需要给予用户提示确认,用户点击确认按钮才能继续执行,或者用户点击取消按钮则取消执行操作;

    当网页上点击查看,展示的数据需要使用弹出框展示的情况下,可以使用oaoDailog

    1.3. 原理图

    基于boostrap3.0的modal,jquery1.9

    1.4. 使用说明

    为什么需要oaoDailog?

    a.由于boostrap3.0提供的modal,必须要在页面上先定义一个modal的div隐藏代码,用户将需要展示的内容写到该div中,如果一个页面有多种模态框,则需要写多个隐藏的模态框div隐藏代码,无疑这是多余的。

    b.由于默认的modal是没有确认和取消按钮的,当然我们可以写两个button在模态框的隐藏div中,但是我们同时需要写js去监控确认按钮点击后执行的操作,同时确认按钮执行的操作,跟弹出时用户点击的数据有关系,数据如何传递,bootstrap没有给我们提供。

    c. oaoDailog1.0.0版本主要就是解决bootstrap的模态框使用不方便,代码冗余的问题。

    效果图:

    开始使用

    1、 引入oaoDailog.js

    Code:

    2、 调用展示弹出框的代码

    Code:

    oao.dialog({
    title:"删除提示框",
    content:"请确认是否真的删除,删除后将无法恢复!",
    ok:function(){
    oao.dialog.close();
    }
    });

    这就是一个基本也是使用最常见的确认弹出框的使用方法。

    1.5. API

    oao.dialog():这个方法是生成弹出框的方法,传入的参数是一个json对象,当然你也可以什么都不传,那样会弹出一个空白的弹出框,这是没有问题的。下面分别介绍每个参数的意思以及默认值。

    属性名

    属性类型

    说明

    默认值

    title

    String

    弹出框标题

    提示

    content

    String

    弹出框的主要内容,可以是文本和html代码

    okVal

    String

    确认按钮的自定义文字

    确认

    ok

    Function/boolean

    点击确认执行的方法

    关闭功能

    cancelVal

    String

    取消按钮的自定义文字

    取消

    cancal

    Function/boolean

    点击取消执行的方法

    关闭功能

    •oao.dialog.close():关闭模态框

    1.6. 待支持的功能 1.目前弹出框的内容只支持文字和静态html,不支持url请求

    2.目前最多只能显示两个按钮,不支持自定义按钮,后续支持

    3.目前弹出框的位置和大小不支持自定义

    4.目前的弹出框一次只能弹出一个,不支持弹出框中再弹出一个模态框(bootstrap modal底层不支持)

    敬请期待,下个版本见。

    /*!
    * oaoDialog 1.0.0
    * author:xufei
    * Date: 2015-7-9 1:32
    * http://www.oaoera.com
    * Copyright © 2014 www.oaoera.com Inc. All Rights Reserved. 沪ICP备13024515号-1 上海义信电子商务有限公司 
    *
    * This is licensed under the GNU LGPL, version 2.1 or later.
    * For details, see: http://creativecommons.org/licenses/LGPL/2.1/
    */
    //oao命名空间
    oao = {};
    oao.init = function(settings){
    var defaultSettings ={
    title : "提示",
    content:"",
    okVal:"确认",
    cancalVal:"取消",
    ok:function(){
    $("#oaoModal").modal('hide');
    },
    cancel:function(){
    $("#oaoModal").modal('hide');
    },
    close:false
    }
    oao.settings = $.extend({}, defaultSettings, settings || {});
    return oao.settings;
    }
    oao.initContent = function(){
    var modelHtml = 
    "
    "+ "
    "+ "
    "+ "
    "+ " "+ "

    "+ "
    "+ "
    "+ "
    "+ "
    "+ " "+ " "+ "
    "+ "
    "+ "
    "+ "
    "; var $modelHtml = $(modelHtml); $(".modalOK",$modelHtml).text(oao.settings.okVal); $(".modalCancel",$modelHtml).text(oao.settings.cancalVal); $(".modal-title",$modelHtml).text(oao.settings.title); $(".modal-body",$modelHtml).html(oao.settings.content); if(!oao.settings.ok){ $(".modalOK",$modelHtml).remove(); } if(!oao.settings.cancel){ $(".modalCancel",$modelHtml).remove(); } $("body").append($modelHtml); } //弹出对话框的方法 oao.dialog = function(settings){ settings = oao.init(settings); oao.initContent(); //关闭的时候调用方法 $('#oaoModal').on('hidden.bs.modal', function (e) { if(oao.settings.close){ oao.settings.close(); } $("#oaoModal").remove(); }) if(oao.settings.ok){ $("#oaoModal .modalOK").click(settings.ok); } if(oao.settings.cancel){ $("#oaoModal .modalCancel").click(settings.cancel); } $("#oaoModal").modal('show') .css({ "margin-top": function () { return ($(this).height() / 2-200); } });; } //关闭对话框的方法 oao.dialog.close = function(){ $("#oaoModal").modal('hide'); }
    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:bootstarp_dailog
    上一篇:Vue.js基础知识汇总_其它 下一篇:浅析jquery与checkbox的checked属性的问题_jquery
    大前端线上培训班

    相关文章推荐

    • javascript如何获取当前方法名• javascript怎么设置p的值• javascript怎么检测变量是否存在• JavaScript如何获取HTML元素• javascript怎么取消点击事件

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网