>如果您的项目包含不吸引人的选择框,并且您想向其添加更多功能,则会发现选择和Select2非常有用。这是两个jQuery插件,可帮助您设计选择框以改善其外观,自定义其行为并使它们更友好。
>>在本文中,我将把这两个插件正对准,并比较它们的功能和用例,以便您可以做出最适合您的选择。
钥匙要点
选择和Select2是jQuery插件,可增强选择框的功能,从而提高其外观和用户友好性。虽然选择是一个可靠且坚固的插件,但它并不像Select2那样积极地维护,该插件定期添加新功能和集成。
>- >两个插件都支持占位符文本,允许在选项中进行搜索,并提供限制选择数量的能力。但是,Select2还提供了在打开下拉列表时取消选择选项的选项,尚未在所选中实现的功能。
- > select2脱颖而出,其其他功能,包括程序化访问,标记,令牌化和模板。它还支持Ajax并提供更高级的自定义选项,使其成为选择框的功能更强大的工具。
- >选择是基本选择盒增强功能的一个不错的选择,但建议使用Select2来进行更高级的功能和常规更新。 Select2还提供全面的文档,使其更容易在项目中实施和使用。
- >安装
- 选择和Select2都可以通过GitHub获得。这意味着您可以克隆各自的存储库并获取所需的文件。
否则,您可以将两个插件与Bower安装(作为GitHub的接口)。如果鲍尔是您的首选路线,那么您不妨在使用时抓住jQuery。
否则,从您选择的CDN(例如CDNJ)中获取文件,并以通常的方式将它们包含在页面中。这是我在下面的模板中所做的,您可以使用此操作以及教程中的示例。
选择
<span>git clone https://github.com/harvesthq/chosen.git </span><span>git clone https://github.com/select2/select2.git </span>
select2
bower <span>install jquery </span>bower <span>install select2 </span>bower <span>install chosen </span>
项目是否积极维护?
>您可以通过访问其GitHub页面来确定,所选插件的开发并不像以前那样活跃,并且是2014年2月6日所选日期的最新版本。这并不是说图书馆已经存在被遗弃 - 远离它!相反,开发人员将其带到了他们想要的地方,并且仍然是一个可靠且强大的插件。 另一方面,与select2相比,对比了,差异很明显。该图书馆的开发将全力以赴,最近发布了其官方的第四版(4.0.0)。这意味着正在添加新功能,而其他功能则被弃用和/或删除。
>另一个有用的指标可能是在堆栈溢出上使用这些标签的问题数量。您可以在这里亲自尝试:http://stackoverflow.com/tags
>如果您输入“ select2”,然后对比“选择”,您会发现Select2插件周围似乎还有更多活动。您还会看到它具有许多集成,例如AngularJS和Ruby在Rails上。
选择盒子和占位符
select2和选择更改简单的方式,并出现多个选择框。
在带有纯HTML的多个选择框中,用户可以看到列表中可用的一些选项。这不是视觉上吸引人的,必须对此观点进行更改。选择和select2删除“列表视图”,当您在“选择框”内单击时,将出现选项列表。只有这样,您才能进行选择。>您可以使用两个插件搜索您的选项。只需单击框内,然后输入您选择的第一个字符,然后根据您的搜索实时出现结果。
select2使得更容易取消选择已经选择的选项。打开下拉列表时,您可以单击任何选定的元素以取消选择。选定尚未实现此功能。
>
选择的单个和多个选择框的选择和Select2支持占位符文本。选择数量有限
>有时在一个多个选择框中,您需要限制“选项”用户选择的数量。使用选择和Select2的优点是您可以非常简单地更改选择数量。
>您可以限制可以从两个插件的多选盒中选择的选择数量,尽管值得注意的是,选择此功能的版本更为先进。达到限制后,如果您尝试选择一个调用事件的其他选项。 >请参阅Pen的选择数量有限的选择:codepen上的sitepoint(@sitepoint)选择的选择。 >人们会在各种设备上看到您的页面,因此选择框,就像您网站的其他组件一样,应该响应能力。所选和Select2支持设置宽度的百分比都具有一个百分比,并且两者的功能几乎相同。这有助于创建响应式选择的框,以考虑屏幕尺寸或浏览器窗口宽度。 >选择和Select2对此功能的唯一区别是代码。您可以在HTML中声明Select2的select标签。在下面查看它,以了解使Select Select Box响应能力和视觉上更好的方便。
为了让插件知道您已经激活了禁用的结果,请在选项标签中添加属性=“ disabled”,您将在其中使用此功能。
在此选定的示例中,用户只能在其地理位置中选择可用的选项,但是即使它们不可用,它们也可以看到其他选项: 上的禁用结果。
> >以不同的字母为不同的语言编写了大量网站,除此之外,其中一些语言是从另一个方向读取的。建议精选的框应根据这些语言的规则进行调整,并将其方向从LTR(从左到右)转移到RTL。这可以改善用户体验,并提高您网站对该地区用户的可用性。 选择和Select2在Select Box中支持左右技术。他们唯一的区别是Select2需要您在JavaScript文件中声明RTL支持,与此同时,您只需将所选的RTL类与HTML中的选定选择类一起添加。 >
>
如果选择范围很大,并且您无法在选项列表中键入所有选择时,
>
>将标签设置为true后,可用包含令牌分隔符的选项可用。输入标签的名称后,只需键入指定的令牌分离器之一。然后将标签作为选项列表中的选择输入。令牌分离器是通过从键盘中键入字符来创建标签的快捷方式。 >在Select2的帮助下,您可以使用所需的任何字符创建令牌分离器。在下面的示例中,使用了四个令牌分离器: /,,,;和“”(Space)。 >通过键入一个新选项,然后是一个分隔符字符来选择它并将其添加到选项列表:
结论 >
>
以实现Select2,您首先需要在项目中包括Select2 CSS和JavaScript文件。然后,您可以使用$(“ MySelectBox”)。select2()在任何选择框上初始化select2;命令。您还可以通过将选项传递到select2()函数来自定义Select2的行为。 ,而从技术上讲可以同时使用和select2在同一项目中,通常不建议进行。这两个插件旨在增强选定框的功能,并将它们一起使用可能导致冲突和意外行为。最好选择最适合您需求的一种。 select2和选择允许通过CSS进行广泛的自定义。您可以通过在您自己的CSS文件中覆盖其默认样式来更改外观的颜色,字体,尺寸和其他方面。 >我可以将所选或select2与Angular或React这样的框架使用? 选择的是内置的搜索功能。当您在选择框中选择的初始化时,会自动添加搜索框。用户可以在此框中键入此框以过滤选择框中的选项。响应式设计
<span>git clone https://github.com/harvesthq/chosen.git
</span><span>git clone https://github.com/select2/select2.git
</span>
bower <span>install jquery
</span>bower <span>install select2
</span>bower <span>install chosen
</span>
<meta charset="UTF-8">
<title>Chosen/Select2 Template</title>
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/chosen/1.4.2/chosen.min.css">
<script></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/chosen/1.4.2/chosen.jquery.min.js"></script>
<script>// Additional logic goes here</script>
<meta charset="UTF-8">
<title>Select2 Template</title>
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/select2/4.0.1/css/select2.min.css">
<script src="https://img.php.cn/code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/select2/4.0.1/js/select2.min.js"></script>
<script>// Additional logic goes here</script>
其他类似的功能
>选择和Select2具有其他共同的功能,但是我想查看我发现有趣的三个功能:残疾人结果,隐藏的搜索框以及左右(RTL)支持。
最有趣的是残疾人结果。使用此选项集,选择和Select2突出显示了已启用的选项。您可以看到残疾人的选择,但无法选择它们。通常设置禁用结果,以防止用户选择该选项,直到满足其他条件为止。此功能将您的选择框变成一个功能强大的工具,如果您根据需要学习如何使用它,它会增加与用户的互动。
<span>max_selected_options: 2 // Chosen Plugin
</span>
>请参阅codepen上的sitepoint(@sitepoint)的笔选择的笔:
<span>maximumSelectionLength: 2 // Select2 Plugin
</span>
<!-- Chosen - HTML -->
<select>
...
</select>
>我应该添加有关Select2的一件事是,您可以永久隐藏搜索框,而不必担心选择框中的选项数量。您可以通过将MinimumResultsForsearch设置为Infinity来做到这一点。
<span>git clone https://github.com/harvesthq/chosen.git
</span><span>git clone https://github.com/select2/select2.git
</span>
>左右(RTL)支撑
> select2受到选择的启发,并且具有所选的大多数功能,但其贡献者并没有止步于此。它们构建了一些最酷的功能,用于选择框,包括程序化访问,模板,禁用模式,标记和令牌化。它还支持Ajax。
程序化访问将选择框带到另一个级别。它们非常有用,与多个精选框结合在一起。您可以使用JavaScript添加根据规则在这些选择框上作用的按钮。
bower <span>install jquery
</span>bower <span>install select2
</span>bower <span>install chosen
</span>
<meta charset="UTF-8">
<title>Chosen/Select2 Template</title>
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/chosen/1.4.2/chosen.min.css">
<script src="https://img.php.cn/code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/chosen/1.4.2/chosen.jquery.min.js"></script>
<script>// Additional logic goes here</script>
在此示例中,您可以通过单击“ iOS Technologies”按钮快速设置“ Swift”和“ Objective-C”:
标记是Select2的另一个功能,它使Select框更强大,并扩展了普通选择框的限制。它允许用户添加尚未在选项列表中的新选择。
<meta charset="UTF-8">
<title>Select2 Template</title>
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/select2/4.0.1/css/select2.min.css">
<script src="https://img.php.cn/code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/select2/4.0.1/js/select2.min.js"></script>
<script>// Additional logic goes here</script>
>请参阅codepen上的sitepoint(@sitepoint)标记的笔选择的笔。
tokenization
<span>git clone https://github.com/harvesthq/chosen.git
</span><span>git clone https://github.com/select2/select2.git
</span>
> Select2最强大的功能之一是模板。模板使我们能够自定义Select2显示的组件的外观。此功能可用于合并选项标签提供的最小输入与图像或其他组件为用户创建视觉显示。 >尽管其中选择有一些不错的选择,但是Select2提供了更多的可用功能,可与Select Box一起使用。如果您将其组合在网站的“流”中,则选择是一个不错的选择,但是如果您想访问更高级的功能,那么Select2是更好的选择。
>我强烈建议使用select2;它的更新频率比所选择的频率更高,并且错误更少。我发现对Select2的文档非常有帮助。在阅读它时,您可以随时使用项目中的select2组件。>如何在项目中实现select2?
>我可以在同一项目中使用所选和select2吗?
我如何自定义Select2的外观并选择?
如何使用Select2?非常适合处理大型数据集的AJAX支持。您可以将Select2配置为随着用户类型即时获取数据,从而阻止需要预先加载所有数据。与大型数据集一起工作时,这可以显着提高性能。
>如何使用select2和选择多个选择?
select2和选择支持多个选择。您可以通过在选择框中添加多个属性来启用此功能。当启用多个选择时,用户可以从选择框中选择多个选项。>我可以使用移动设备选择或选择2使用?
我如何处理Select2并选择的事件?您可以聆听和回应的事件。例如,您可以在用户选择时聆听更改事件以运行功能。您可以使用jQuery中的.on()方法来连接事件侦听器。
>
以上是jQuery选择框组件 - 选择vs select2的详细内容。更多信息请关注PHP中文网其他相关文章!

Python更适合初学者,学习曲线平缓,语法简洁;JavaScript适合前端开发,学习曲线较陡,语法灵活。1.Python语法直观,适用于数据科学和后端开发。2.JavaScript灵活,广泛用于前端和服务器端编程。

Python和JavaScript在社区、库和资源方面的对比各有优劣。1)Python社区友好,适合初学者,但前端开发资源不如JavaScript丰富。2)Python在数据科学和机器学习库方面强大,JavaScript则在前端开发库和框架上更胜一筹。3)两者的学习资源都丰富,但Python适合从官方文档开始,JavaScript则以MDNWebDocs为佳。选择应基于项目需求和个人兴趣。

从C/C 转向JavaScript需要适应动态类型、垃圾回收和异步编程等特点。1)C/C 是静态类型语言,需手动管理内存,而JavaScript是动态类型,垃圾回收自动处理。2)C/C 需编译成机器码,JavaScript则为解释型语言。3)JavaScript引入闭包、原型链和Promise等概念,增强了灵活性和异步编程能力。

不同JavaScript引擎在解析和执行JavaScript代码时,效果会有所不同,因为每个引擎的实现原理和优化策略各有差异。1.词法分析:将源码转换为词法单元。2.语法分析:生成抽象语法树。3.优化和编译:通过JIT编译器生成机器码。4.执行:运行机器码。V8引擎通过即时编译和隐藏类优化,SpiderMonkey使用类型推断系统,导致在相同代码上的性能表现不同。

JavaScript在现实世界中的应用包括服务器端编程、移动应用开发和物联网控制:1.通过Node.js实现服务器端编程,适用于高并发请求处理。2.通过ReactNative进行移动应用开发,支持跨平台部署。3.通过Johnny-Five库用于物联网设备控制,适用于硬件交互。

我使用您的日常技术工具构建了功能性的多租户SaaS应用程序(一个Edtech应用程序),您可以做同样的事情。 首先,什么是多租户SaaS应用程序? 多租户SaaS应用程序可让您从唱歌中为多个客户提供服务

本文展示了与许可证确保的后端的前端集成,并使用Next.js构建功能性Edtech SaaS应用程序。 前端获取用户权限以控制UI的可见性并确保API要求遵守角色库

JavaScript是现代Web开发的核心语言,因其多样性和灵活性而广泛应用。1)前端开发:通过DOM操作和现代框架(如React、Vue.js、Angular)构建动态网页和单页面应用。2)服务器端开发:Node.js利用非阻塞I/O模型处理高并发和实时应用。3)移动和桌面应用开发:通过ReactNative和Electron实现跨平台开发,提高开发效率。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具

Dreamweaver CS6
视觉化网页开发工具

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

Dreamweaver Mac版
视觉化网页开发工具