当您想使用户与您的网站进行交互时, 模式窗口非常有用。 有时将模式窗口称为模式框,因为该窗口用于显示对话框 。 在上一篇文章中,我们已指导您完成有关如何使用Bootstrap插件制作模态窗口的教程。
在本文中,我们将向您介绍另一个使用jQuery库Vex创建模态窗口的好帮手。
Vex是一个完整且高度可定制的Javascript库 ,可帮助您轻松创建模态窗口。 这个轻巧的jQuery插件取代了浏览器本机对话框。
基本设定
首先,我们需要准备Vex脚本。 您可以在此处下载。 然后,使用以下脚本将最新的jQuery包含在标题中。
<script src="http://code.jquery.com/jquery-latest.min.js"></script>
要使用Vex,您必须包含vex.js
和vex.css
文件。 而不是使用vex.js
和vex.dialog.js
,你可以只包括vex.combined.js
或vex.combined.min.js
。
现在,我们将像这样将这些Vex库添加到标题中。
<script src="vex.combined.min.js"></script>
<link rel="stylesheet" href="vex.css" />
<link rel="stylesheet" href="vex-theme-os.css" />
在上面的脚本中,我包含了vex-theme-os.css
,这是一个不同的即用型Vex主题。 要使用其他主题,您可以在此处查看演示随附的文档。
应用Vex
Vex中最基本的方法是vex.dialog.alert
, vex.dialog.confirm
和vex.dialog.prompt
。 还有vex.dialog.open
,它是这些方法的组合,可用于更高级的用法,例如创建表单,登录名或多个模式窗口 。
现在,我们将尝试使用vex.dialog.open
方法构建一个简单的登录模式窗口。 在开始该方法之前,我们必须首先应用与defaultOptions.className
选项一起使用的主题。 要应用主题,您可以像这样轻松地将主题名称添加为值选项。
vex.defaultOptions.className = 'vex-theme-os';
如前所述, vex.dialog.open
方法基本上是其他3种方法的组合。 以下代码是一个更复杂的演示,我们在其中调用alert
, confirm
和内部prompt
以构建登录对话框。
<script>
vex.defaultOptions.className = 'vex-theme-os';
vex.dialog.open({
message: 'Please enter your username and password:',
input: "<input name=\"username\" type=\"text\" placeholder=\"Username\" required />\n<input name=\"password\" type=\"password\" placeholder=\"Password\" required />",
buttons: [
$.extend({}, vex.dialog.buttons.YES, {
text: 'Login'
}), $.extend({}, vex.dialog.buttons.NO, {
text: 'Back'
})
],
});
</script>
因此,我们的登录框将显示如下。
最终思想
还有许多其他工具可以用来创建模式窗口,但Vex是一个相当完整且可高度配置的工具。 您可以向框中添加警报,提示,确认,表单或其他输入选项,甚至可以设置动画 。 其他重要功能还有多个模式窗口和模式框内的对话框,它在移动设备中运行顺畅。
Vex还带有现成的主题,可以使对话框符合您的风格,无论是在CSS还是SASS上 。 它也与大多数现代浏览器兼容,并且非常轻巧-仅压缩了7kb以下(压缩后2kb + gzipped)。