Frontend - Boostrap 消息弹窗

目录

一、下载

(一)中文官网

(二)bootstrap v3 依赖 jQuery 插件

二、解压并安装

(一)解压

1. 压缩包解压

2. 简化文件

(二)安装

三、配置

(一)base.html中放置文件

(二)放置顺序

四、应用:三秒消息弹框

(一)参考资源

(二)设定

1. base.html 内容

2. test.html 内容

3. js 内容

4. base.css 内容


以下内容均以 bootstrap v3 为例

一、下载

(一)中文官网

        https://www.bootcss.com/

(二)bootstrap v3 依赖 jQuery 插件

        若 bootstrap 版本是 v3,则依赖 jQuery 插件,需要下载 jquery-3.1.1.min.js 文件。

        若 bootstrap 版本是 v4, v5,则不依赖 jQuery 插件。

二、解压并安装

(一)解压

1. 压缩包解压

2. 简化文件

        若只要求实现 boostrap 的基础功能,则选取以下文件即可:

        bootstrap.css、bootstrap.min.css、bootstrap.js、bootstrap.min.js

(二)安装

        解压后的 css、js 文件分别放置在项目 static 的 css、js 文件夹中。

三、配置

(一)base.html中放置文件

<head><link rel="stylesheet" type="text/css" href="{% static 'css/bootstrap.css' %}"/><link rel="stylesheet" type="text/css" href="{% static 'css/bootstrap.min.css' %}"/><script type="text/javascript" src="{% static 'js/jquery-3.1.1.min.js' %}"></script><script type="text/javascript" src="{% static 'js/bootstrap.min.js' %}"></script><script type="text/javascript" src="{% static 'js/dataTables.bootstrap.min.js' %}"></script>
</head>

(二)放置顺序

        jquery-3.1.1.min.js 需要放在 bootstrap.min.js 的前面。

四、应用:三秒消息弹框

(一)参考资源

        消息弹窗设定:https://getbootstrap.com/docs/4.0/components/alerts/

        图标获取: https://icons.bootcss.com/

(二)设定

1. base.html 内容

<body id="body">. . .<div>{% block content %} {% endblock %}</div><div id="msg_box" class="msg_box"></div>  <!-- 消息弹窗 -->
</body>

2. test.html 内容

{% extends "base.html" %}
{% load static %}
{% load i18n %}
{% block content %}
<div id="main"><h1>测试弹窗的界面<h1><button id="btn_alert">点击测试</button>
</div>
<script type="text/javascript">
$(document).ready(function () {$('#btn_alert').click(function () {sys_alert('warning', 'bi bi-exclamation-circle', '展示警告的消息弹窗');//信息弹窗提示})
});
</script>
{% endblock %}

3. js 内容

// 自动关闭弹窗
function close_div(idx, show_time) {setTimeout(function () {$('.alert_item_' + idx).remove();},  show_time * 1000); // 2秒
}// 弹窗功能,其中,alert_idx 当前弹窗下标; alert_type 弹窗类型(boostrap有success、warning等),alert_icon 弹窗类型图标(在bootstrap icons图标库中查找),alert_msg 提示信息
var alert_idx = 0; 
function sys_alert(alert_type, alert_icon, alert_msg) {// 组装单个弹窗let str = `<div class="item_css alert_item_` + alert_idx + `"><div class="alert_cont alert-` + alert_type + ` alert-dismissible"><div class="cont_center"><h4><i class="` + alert_icon + `"></i> ` + alert_msg + `</h4><button type="button" class="close alert_off " close_item="` + alert_idx + `"><i class="bi bi-x"></i></button></div></div></div>`;// 将所有弹窗放进base.html中规定的总大盒子里$('#msg_box').append(str);// 动态显示消息弹窗$('.alert_item_' + alert_idx).slideDown(200, 'linear', function () {$(this).delay(2 * 1000).slideUp(200, 'linear');  // 2秒close_div(alert_idx, 2); // 2秒后自动关闭});// 关闭消息弹窗$(".alert_off").off().on('click', function () {close_div($(this).attr('close_item'), 0); // 马上关闭})alert_idx++;
}

4. base.css 内容

/* 装多个弹窗的大盒子 的显示范围 */
.msg_box {position: absolute;top: 0;width: 100%;display: block;text-align: center;
}
/* 单个弹窗的 对外布局 */
.msg_box .item_css{display: none;margin: 10px 0 0 0;
}
/* 单个弹窗的 内容布局-适应文字长度 */
.item_css>.alert_cont{display: inline-block;overflow: hidden;padding: 5px;opacity: .9;  /* 完全透明是 0 */
}
/* 单个弹窗的 内容布局-设置内容水平垂直居中 */
.item_css .cont_center{display: flex;align-items: center;  /* 垂直居中 */justify-content: space-between;
}
/* 单个弹窗的 关闭按钮位置 */
.item_css .alert-dismissible .close{padding: 0 0 0 10px !important;position: inherit;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/512763.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【prompt五】CoCoOP:Conditional Prompt Learning for Vision-Language Models

motivation 随着像CLIP这样强大的预训练视觉语言模型的兴起,研究如何使这些模型适应下游数据集变得至关重要。最近提出的一种名为上下文优化(CoOp)的方法将提示学习(nlp的最新趋势)的概念引入视觉领域,以适应预训练的视觉语言模型。具体来说,CoOp将提示中的上下文单词转换为…

【数据库-黑马笔记】基础-SQL

本文参考b站黑马数据库视频,总结详细全面的笔记 ,可结合视频观看1~23集 MYSQL 的基础知识框架如下 一、MYSQL概述 1、数据库相关概念 2、MYSQL的安装及启动 下载过程请自行观看黑马视频进行下载 下面说明启动和停止方式: ①、win+r 然后输入services.msc 然后在打开…

vue实现xml,sql,JSON自动格式化高亮

实现xml&#xff0c;json&#xff0c;sql代码组件格式化高亮&#xff1a; 需要下载的依赖&#xff1a; <template><div class"box"><div class"top" v-if"flag"><span class"text">Theme:</span><…

Vue 3的Composition API和vue2的不同之处

Vue 3的Composition API是Vue.js框架的一个重要更新&#xff0c;它提供了一种新的组件逻辑组织和复用方式。在Vue 2中&#xff0c;我们通常使用Options API&#xff08;data、methods、computed等&#xff09;来组织组件的逻辑&#xff0c;但这种组织方式在处理复杂组件时可能会…

springboot-异步、定时、邮件任务

一、异步任务 1、创建项目 2、创建一个service包 3、创建一个类AsyncService 异步处理还是非常常用的&#xff0c;比如我们在网站上发送邮件&#xff0c;后台会去发送邮件&#xff0c;此时前台会造成响应不动&#xff0c;直到邮件发送完毕&#xff0c;响应才会成功&#xff…

Arduino串口控制舵机机械臂

Arduino nano作为主控板&#xff0c;控制由四个SG90舵机组成的机械臂&#xff0c;原先想着用四个电位计控制舵机转动&#xff0c;结果舵机一直抖动&#xff0c;索性就使用串口类似at指令控制舵机转动。使用的串口中断&#xff0c;通信的数据也是 字母数字 的格式&#xff0c;字…

AI大模型的预训练、迁移和中间件编程

大家好&#xff0c;我是爱编程的喵喵。双985硕士毕业&#xff0c;现担任全栈工程师一职&#xff0c;热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。…

Docker部署前后端服务示例

使用Docker部署js前端 1.创建Dockerfile 在项目跟目录下创建Dockerfile文件&#xff1a; # 使用nginx作为基础镜像 FROM nginx:1.19.1# 指定工作空间 WORKDIR /data/web# 将 yarn build 打包后的build文件夹添加到工作空间 ADD build build# 将项目必要文件添加到工作空间&a…

Linux中汇编语言的学习(加法、乘法、除法、左移、右移、按位与等多种命令操作实例以及ARM的 N、Z、C、V 标志位的解释)

汇编概述 汇编需要学习的大致框架如下&#xff1a; 汇编中的符号 1.指令&#xff1b;能够北嘁肷梢惶?2bit机器码&#xff0c;并且能够被cpui识别和执行 2.伪指令&#xff1a;本身不是指令&#xff0c;编译器可以将其替换成若干条指令 3.伪操作&#xff1a;不会生成指令…

JAVA如何利用接口实现多继承问题

hello&#xff0c;上文带大家学习了java中类的继承&#xff0c;我们可以创建一个父类&#xff0c;将类中的共性抽取出来&#xff0c;通过子类继承的方式来实现代码的复用。今天带大家学习不同类之间的另外几种关系&#xff0c;即多态抽象类和接口。 多态的概念 多态&#xff0c…

TinyEMU编译与使用(一)

TinyEMU编译与使用&#xff08;一&#xff09; 1 介绍2 准备工作3 编译TinyEMU3.1 安装依赖库3.2 编译 4 运行TinyEMU4.1 在线运行4.2 离线运行 5 共享目录5.1 修改root_9p-riscv64.cfg5.2 启动TinyEMU5.3 执行挂载命令 6 TinyEMU命令帮助 1 介绍 原名为riscvemu&#xff0c;于…

可持久化数据结构

可持久化数据结构必须满足在操作过程中数据结构本身的拓扑结构不变&#xff0c;可以用来存下数据结构的所有历史版本。 核心思想&#xff1a;只记录每一个版本与前一个版本不一样的地方。 这里我们讨论两种数据结构的可持久化——trie和线段树。 Trie的可持久化 由于之前没…