WEB前端网页设计-Bootstrap5 弹出框 & JavaScript 函数

2023-11-11

目录

 Bootstrap5 弹出框

如何创建弹出框

指定弹出框的位置

关闭弹出框

JavaScript 函数

JavaScript 函数语法

调用带参数的函数

带有返回值的函数

语法

局部 JavaScript 变量

全局 JavaScript 变量

JavaScript 变量的生存期

向未声明的 JavaScript 变量分配值


 Bootstrap5 弹出框

弹出框控件类似于提示框,它在鼠标点击到元素后显示,与提示框不同的是它可以显示更多的内容。


如何创建弹出框

通过向元素添加 data-bs-toggle="popover" 来来创建弹出框。

title 属性的内容为弹出框的标题,data-bs-content 属性显示了弹出框的文本内容:

<button type="button" class="btn btn-primary" data-bs-toggle="popover" title="弹出框标题" data-bs-content="弹出框内容">多次点我</button>

注意: 弹出框要写在 JavaScript 的初始化代码里。

以下实例可以在文档的任何地方使用弹出框:

var popoverTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="popover"]'))
var popoverList = popoverTriggerList.map(function (popoverTriggerEl) {
  return new bootstrap.Popover(popoverTriggerEl)
})

指定弹出框的位置

默认情况下弹出框显示在元素右侧。

可以使用 data-bs-placement 属性来设定弹出框显示的方向: top, bottom, left 或 right:

<a href="#" title="标题" data-bs-toggle="popover" data-bs-placement="top" data-bs-content="我是内容部分">点我</a>
<a href="#" title="标题" data-bs-toggle="popover" data-bs-placement="bottom" data-bs-content="我是内容部分">点我</a>
<a href="#" title="标题" data-bs-toggle="popover" data-bs-placement="left" data-bs-content="我是内容部分">点我</a>
<a href="#" title="标题" data-bs-toggle="popover" data-bs-placement="right" data-bs-content="我是内容部分">点我</a>

关闭弹出框

默认情况下,弹出框在再次点击指定元素后就会关闭,你可以使用 data-bs-trigger="focus" 属性来设置在鼠标点击元素外部区域来关闭弹出框:

<a href="#" title="取消弹出框" data-bs-toggle="popover" data-bs-trigger="focus" data-bs-content="点击文档的其他地方关闭我">点我</a>

提示:如果你想实现在鼠标移动到元素上显示,移除后消失的效果,可以使用 data-bs-trigger 属性,并设置值为 "hover":

<a href="#" title="标题" data-bs-toggle="popover" data-bs-trigger="hover" data-bs-content="一些内容">鼠标移动到我这</a>

JavaScript 函数


函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>测试实例</title>
<script>
function myFunction()
{
    alert("Hello World!");
}
</script>
</head>
 
<body>
<button onclick="myFunction()">点我</button>
</body>
</html>

JavaScript 函数语法

函数就是包裹在花括号中的代码块,前面使用了关键词 function:

function functionname()
{
    // 执行代码
}

当调用该函数时,会执行函数内的代码。

可以在某事件发生时直接调用函数(比如当用户点击按钮时),并且可由 JavaScript 在任何位置进行调用。

JavaScript 对大小写敏感。关键词 function 必须是小写的,并且必须以与函数名称相同的大小写来调用函数。


调用带参数的函数

在调用函数时,您可以向其传递值,这些值被称为参数。

这些参数可以在函数中使用。

您可以发送任意多的参数,由逗号 (,) 分隔:

myFunction(argument1,argument2)

当您声明函数时,请把参数作为变量来声明:

function myFunction(var1,var2)
{
代码
}

变量和参数必须以一致的顺序出现。第一个变量就是第一个被传递的参数的给定的值,以此类推。

 

<p>点击这个按钮,来调用带参数的函数。</p>
<button onclick="myFunction('Harry Potter','Wizard')">点击这里</button>
<script>
function myFunction(name,job){
    alert("Welcome " + name + ", the " + job);
}
</script>

上面的函数在按钮被点击时会提示 "Welcome Harry Potter, the Wizard"。

函数很灵活,您可以使用不同的参数来调用该函数,这样就会给出不同的消息:

<button onclick="myFunction('Harry Potter','Wizard')">点击这里</button>
<button onclick="myFunction('Bob','Builder')">点击这里</button>

根据您点击的不同的按钮,上面的例子会提示 "Welcome Harry Potter, the Wizard" 或 "Welcome Bob, the Builder"。


带有返回值的函数

有时,我们会希望函数将值返回调用它的地方。

通过使用 return 语句就可以实现。

在使用 return 语句时,函数会停止执行,并返回指定的值。

语法

function myFunction()
{
    var x=5;
    return x;
}

上面的函数会返回值 5。

注意: 整个 JavaScript 并不会停止执行,仅仅是函数。JavaScript 将继续执行代码,从调用函数的地方。

函数调用将被返回值取代:

var myVar=myFunction();

myVar 变量的值是 5,也就是函数 "myFunction()" 所返回的值。

即使不把它保存为变量,您也可以使用返回值:

document.getElementById("demo").innerHTML=myFunction();

"demo" 元素的 innerHTML 将成为 5,也就是函数 "myFunction()" 所返回的值。

您可以使返回值基于传递到函数中的参数:

计算两个数字的乘积,并返回结果:

function myFunction(a,b)
{
    return a*b;
}
 
document.getElementById("demo").innerHTML=myFunction(4,3);
"demo" 元素的 innerHTML 将是:

12

在您仅仅希望退出函数时 ,也可使用 return 语句。返回值是可选的:

function myFunction(a,b)
{
    if (a>b)
    {
        return;
    }
    x=a+b
}

如果 a 大于 b,则上面的代码将退出函数,并不会计算 a 和 b 的总和。


局部 JavaScript 变量

在 JavaScript 函数内部声明的变量(使用 var)是局部变量,所以只能在函数内部访问它。(该变量的作用域是局部的)。

您可以在不同的函数中使用名称相同的局部变量,因为只有声明过该变量的函数才能识别出该变量。

只要函数运行完毕,本地变量就会被删除。


全局 JavaScript 变量

在函数外声明的变量是全局变量,网页上的所有脚本和函数都能访问它。


JavaScript 变量的生存期

JavaScript 变量的生命期从它们被声明的时间开始。

局部变量会在函数运行以后被删除。

全局变量会在页面关闭后被删除。


向未声明的 JavaScript 变量分配值

如果您把值赋给尚未声明的变量,该变量将被自动作为 window 的一个属性。

这条语句:

carname="Volvo";

将声明 window 的一个属性 carname。

非严格模式下给未声明变量赋值创建的全局变量,是全局对象的可配置属性,可以删除。

var var1 = 1; // 不可配置全局属性
var2 = 2; // 没有使用 var 声明,可配置全局属性

console.log(this.var1); // 1
console.log(window.var1); // 1
console.log(window.var2); // 2

delete var1; // false 无法删除
console.log(var1); //1

delete var2; 
console.log(delete var2); // true
console.log(var2); // 已经删除 报错变量未定义

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WEB前端网页设计-Bootstrap5 弹出框 & JavaScript 函数 的相关文章

  • 从 java.util.TimeZone 转换为 org.joda.DateTimeZone

    在Java中如何将一个实例转换为java util TimeZone to org joda DateTimeZone并保持夏令时 Joda Time 处于维护模式 The 乔达时间 http www joda org joda time
  • 带有 HTML 的 UIActivityViewController

    当我将包含 HTML 内容的字符串作为数组元素传递给UIActivityViewController initWithActivityItems方法中 它不会在选定的 共享 控制器中将其呈现为 HTML 而是呈现 HTML 源 即标记而不是
  • Java 内存错误:无法创建新的本机线程

    运行 java 服务器时 我在 UNIX 服务器上收到此错误 Exception in thread Thread 0 java lang OutOfMemoryError unable to create new native threa
  • 如何暂停程序直到按下按钮?

    我使用从 jframe 扩展的类 它有一个按钮 我在程序中使用它 我希望当在我的程序中运行 jframe 时我的整个程序暂停 直到我按下按钮 我该怎么做 in c getch 做这个 我想要一个这样的功能 通过睡眠暂停执行 http dow
  • 在 Java 中停止线程? [复制]

    这个问题在这里已经有答案了 我正在编写一段代码 该代码连接到服务器 使用该连接生成一堆线程并执行一堆 东西 在某些情况下 连接会失败 我需要停止一切并从头开始使用新对象 我想在对象之后进行清理 但在线程上调用 thread stop 但此方
  • Java GUI,根据actionListener更改面板

    我在两个不同的面板中添加了两个按钮 如果单击第一个按钮 则需要转到下一个面板 其中包含第二个按钮 但是当我单击第一个按钮时 该按钮没有被替换 Java GUI import java awt event ActionEvent import
  • 为什么ArrayList没有getSize()而不是size()?

    我在一些 JSP 页面中大量使用 ArrayList 我想像这样访问 ArrayList myArrayList size 但由于对象必须符合 JavaBean 标准 其中myArrayList getMyPropertyName is m
  • Facebook Instant Game - 上传捆绑的 zip 文件会导致 Web 托管出现 SDK 参考错误

    当我尝试上传简单的游戏 应用程序时 我收到一条错误消息 游戏必须通过我们的 CDN 引用我们支持的 SDK 之一 不过我已经给出了 SDK 参考 难道不是这个吗 我也浏览了 facebook 文档的 SDK 参考 但它对我不起作用 有人以前
  • 如何使用C从http下载文件?

    最近几天我试图弄清楚如何从 URL 下载文件 这是我对套接字的第一个挑战 我用它来了解协议 所以我想在没有 cURL 库的情况下只用 C 语言来完成它 我搜索了很多 现在我可以打印页面的源代码 但我认为这与文件不同 我不必只将接收到的数据从
  • 使用java将文件从GCS存储桶传输到SFTP服务器

    我能够从 GCS 存储桶读取文件 但所有库都喜欢jsch将文件传输到 SFTP 服务器时会查找文件路径 而不是内存中的文件 我不想将从GCS读取的文件写入磁盘 如何将内存中的文件传输到SFTP 我假设您想上传内存中的数据 JSch 实际上有
  • CSS 列不会水平对齐

    我正在使用列计数来允许我的文本流入两个不同的列 但第一列的顶部 最左边 低于另一列 col moz column count 2 webkit column count 2 column count 2 div h3 Options h3
  • 使用 spring mvc 的多个域

    假设我有一个应用程序必须缩短 URL 但还要执行其他操作 喜欢google com and goo gl or facebook com and fb me 部署两个应用程序很容易 但 目前 仅部署一个应用程序更简单 使用 spring 和
  • Spring 4 MVC 和 Websockets - 没有合适的默认 RequestUpgradeStrategy

    我需要 Websockets 在我的应用程序中进行实时更新 所以我找到了这个例子并一步一步地做到了here http raymondhlee wordpress com 2014 01 19 using spring 4 websocket
  • 选择活动时运行时崩溃

    首先我想说我几乎没有 Android 经验 这是我在 Android 中的第一个项目 而且我的老师不太擅长教学 所以我对任何过度的无知表示歉意 在进一步讨论之前先解释一下 我的应用程序的目标本质上是能够记录您在某些活动上花费了多少时间 记录
  • Angular 中的动态子组件

    我正在构建一个具有一致的元素列表设计模式的应用程序 如果我有一个 A 类型的对象 我会创建AComponent它接受a作为输入 然后创建另一个组件来迭代 A 列表 AListComponent 那么如果我有一个对象 B 我需要做同样的事情
  • 嵌套异常是java.lang.NoClassDefFoundError:无法初始化类org.springframework.jdbc.support.SQLErrorCodesFactory

    我正在使用 spring 和 jdbctemplate 编写一个应用程序 但是我遇到了以下错误 org springframework web util NestedServletException Handler processing f
  • Selenium 查看鼠标/指针

    有什么方法可以在运行测试时真正看到硒鼠标吗 要么是 Windows 光标图像 要么是某种点或十字线或任何东西 我正在尝试使用拖放功能selenium and java in an HTML5Web 应用程序 并且能够看到光标以了解它实际在做
  • 为什么我得到:没有有效的 JFX 运行时

    我有一个使用 java 1 6 编译并使用 jnlp webstart 运行的现有应用程序 如果我使用 JRE 1 6 从客户端运行此应用程序 一切都会很好 但是 当我使用 java JDK 7 编译代码并使用 JRE 1 7 67 运行客
  • JavaScript - 替换 html 字符串中的特定单词索引

    我在 JS 字符串操作方面面临着一项具有挑战性的任务 有一个 HTML 字符串 我需要在其中替换特定单词索引处的单词 单词索引是忽略 HTML 标签时单词的编号 例如 下面是 HTML 字符串 span style font family
  • 这种说法是否恰当。 if (0 != 表达式或变量) {} 在java中? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi

随机推荐

  • 11 款超赞的 MySQL 图形化工具,好用!

    因公众号更改推送规则 请点 在看 并加 星标 第一时间获取精彩技术分享 点击关注 互联网架构师公众号 领取架构师全套资料 都在这里 0 2T架构师学习资料干货分 上一篇 2022年度最佳开源软件榜单出炉 大家好 我是互联网架构师 MySQL
  • r语言adf检验详细步骤_R语言关联分析操作步骤

    关联规则在打包购物 信息推荐等方面具有很高的利用价值 这里举一个简单的例子来说明R语言是怎么实现关联分析的 1 安装分别用于做关联分析和关联规则可视化的软件包 arules软件包 arulesViz软件包 install packages
  • JDBC数据操作模板

    在没有使用框架之前 对数据的操作是比较繁琐的 为此可以对JDBC数据的操作进行封装 以简化代码 以下是模板 author WDreamIn public class JDBCTemplate
  • FreeRTOS学习笔记-2-FreeRTOSConfig.h

    http www freertos org a00110 html 边看边试着翻译了下 发现看懂是一回事 写成文字表达出来又是另一个层次了 何况还有很多看不懂的 以后有机会 一点一点的补上去吧 lt gt gt gt FreeRTOS 的配
  • MAC配置python环境和一些库的心得,过程简略,只写大概步骤

    当初入手MAC之后首先第一件事就是安装python Django mysql环境 最郁闷的莫过于百度里面的各种抄 看了几页搜索结果基本一个样 你们不觉得这是缺德吗 下面是自己亲测的安装过程 细节没写 但是标注了一些其中遇到的错误 至于细节
  • python2.7配置tensorflow1.5.0和keras2.1.6

    说明 由于ROS使用的是python2 而之前网络模型训练的是python3 7 所以直接迁移会报错 需要重新配置python2 7的环境 1 tensorflow的版本 如果安装的tensorflow版本不对 那么在python2 7下
  • 在termux下安装pip

    termux的包安装命令是pkg或者apt 在termux下安装python包 一般直接pip 本笔记适合初初接触termux或者太久没碰termux而遗忘的 coder 翻阅 学习的细节是欢悦的历程 Python 官网 https www
  • 视频编辑软件Premiere Pro 2023 mac(pr2023)中文

    Premiere Pro mac是一款视频编辑软件 应用于电影制作 电视剧制作 广告制作等领域 它提供了丰富的视频编辑功能 让用户能够剪辑 修剪 调整视频素材 添加特效 过渡效果 以及调整音频等 Premiere Pro 2023 mac软
  • IP数据包详解

    引言 IP提供不可靠 无连接的数据报传送服务 不可靠 意思它不保证IP数据包能成功地到达目的地 IP仅提供尽力而为的传输服务 任何要求的可靠性必须有上层来提供 无连接 意思是IP并不维护任何关于后续数据报的状态信息 每个数据报的处理都是独立
  • fatfs/tiny文件系统的移植

    这个文件系统运行的时候需要的资源少 我的芯片只有2k RAM用这个文件系统刚好 fatfs tiny 么有格式化磁盘的功能 用到这5个文件 配置按照tff h中的说明来就可以了 只需要把我们自己的 读写函数应用到 diskio c中就可以了
  • 华为OD机试真题-内存资源分配-2023年OD统一考试(B卷)

    华为OD机试2023年最新题库 JAVA Python C 题目描述 有一个简易内存池 内存按照大小粒度分类 每个粒度有若干个可用内存资源 用户会进行一系列内存申请 需要按需分配内存池中的资源 返回申请结果成功失败列表 分配规则如下 1 分
  • Android控件-TabLayout使用介绍

    TabLayout 简述 简单示例 TabLayout属性介绍 tabIndicatorFullWidth tabRippleColor tabTextAppearance tabMode tabIndicatorColor tabIndi
  • vue自定义指令:只输入零和正整数

  • 用python怎么赚钱?Python躺赚大法!月入1W外快不在话下!!

    前言 领取python相关资料可以进q裙777899409免费领取 每晚还有大厂老师直播教学 学习路线 电子书籍 python学习相关资料领取 Python作为一门编程语言 一门技术 就一定能够为我们所用 至少赚个外快是绝对没有问题的 渠道
  • 一些看起来不错的Unity资源包

    把两个合并了 Unity assetstore一些好的插件资源
  • c语言--输出斐波那契数列的前10个数

    输出斐波那契数列的前10个数 include
  • 遥感+python 1.2 辐射定标

    遥感 python 1 2 辐射定标 目录 遥感 python 1 2 辐射定标 一 辐射定标概念 绝对定标 相对定标 二 辐射定标原理 三 代码实现 1 数据准备 2 参数获取 3 空值判断 4 辐射定标 5 源码下载 本章节 笔者主要讲
  • 线性代数(python)

    线性代数模块 概念 线性代数是数学运算中的一个重要工具 它在图形信号处理 音频信号处理中起非常重要的作用 numpy linalg模块中有一组标准的矩阵分解运算以及诸如逆和行列式之类的东西 例如 矩阵相乘 如果我们通过 对两个数组相乘的话
  • vue-admin-template中左上角logo让其显示、修改为自定义图片

    目录 显示logo 修改logo 显示logo 1 找到settings js文件 找到sidebarLogo 侧边栏logo 2 修改sidebarLogo的值为true 修改logo 1 找到src layout components
  • WEB前端网页设计-Bootstrap5 弹出框 & JavaScript 函数

    目录 Bootstrap5 弹出框 如何创建弹出框 指定弹出框的位置 关闭弹出框 JavaScript 函数 JavaScript 函数语法 调用带参数的函数 带有返回值的函数 语法 局部 JavaScript 变量 全局 JavaScri