jQuery扁平化风格下拉框美化插件FancySelect使用指南


Posted in Javascript onFebruary 10, 2015

FancySelect是一款小巧实用的jQuery下拉框美化插件。该下拉框美化插件采用扁平化设计风格,是追求时尚的开发者的首选下拉框美化插件之一。

使用方法

HTML结构

FancySelect实用十分简单,它可以和jQuery或Zepto结合使用。在页面中放置一些 <select> 下拉框组件,然后就可以通过 .fancySelect() 方法来调用该下拉框插件。如果下拉框中有某个选项没有值,该插件会使用某种占位文字来代替它。

默认情况下,FancySelect 在 iOS 设备上仅使用原生的下拉框和样式。如果你想覆盖它,在下拉框插件初始化的时候设置 forceiOS 为 true 即可。

FancySelect 也可以通过 <select> 元素的 data-class 属性来指定样式,你可以通过这个方法来指定不同样式的select下拉框。

<select class="basic">

  <option value="">Select something…</option>

  <option>Lorem</option>

  <option>Ipsum</option>

  <option>Dolor</option>

  <option>Sit</option>

  <option>Amet</option>

</select>

JAVASCRIPT

$('.basic').fancySelect();

更新options

如果你的下拉框的 options 在插件初始化后被修改了,你可以通过在下拉框上触发 update.fs 方法来告诉插件更新options列表。

var mySelect = $('.my-select');

mySelect.fancySelect();

mySelect.append('');

mySelect.trigger('update.fs');

启用/禁用下拉框

FancySelect 下拉框插件会在初始化后自动将下拉框设置为 disabled 禁用状态。如果你需要重新设置下拉框的状态,可以在 select 元素上使用 enable.fs 或 disable.fs 方法来修改它们。

<select class="my-select" disabled>

    <option>First Option</option>

    <option>Second Option</option>

</select>

var mySelect = $('.my-select');

mySelect.fancySelect(); // currently disabled because of html property

// later…

mySelect.trigger('enable.fs'); // now enabled

// even later…

mySelect.trigger('disable.fs'); // now disabled again

如果你需要制作一些个性效果,可以使用 triggerTemplate 和 triggerTemplate 方法,它们都是通过 option 选项来返回一个HTML字符串:

<select class="bulbs">

    <option data-icon="old">Incandescent</option>

    <option data-icon="curly">CFL</option>

    <option data-icon="work">Halogen</option>

</select>

$('.bulbs').fancySelect({

    optionTemplate: function(optionEl) {

        return optionEl.text() + '

'; } })

你可以在 <select> 下拉框框选项改变的时候监听 change.fs 事件:

<select class="my-select" disabled>

    <option>First Option</option>

    <option>Second Option</option>

</select>

var mySelect = $('.my-select');

mySelect.fancySelect().on('change.fs', function() {

    $(this).trigger('change.$');

}); // trigger the DOM's change event when changing FancySelect
Javascript 相关文章推荐
你必须知道的Javascript知识点之&quot;this指针&quot;的应用
Apr 23 Javascript
JS Replace()的高级使用方法介绍
Jun 29 Javascript
JS求平均值的小例子
Nov 29 Javascript
js获取 type=radio 值的方法
May 09 Javascript
jQuery插件datalist实现很好看的input下拉列表
Jul 14 Javascript
JavaScript中使用数组方法汇总
Feb 16 Javascript
第一次接触神奇的Bootstrap菜单和导航
Aug 01 Javascript
jQuery日期范围选择器附源码下载
May 23 jQuery
Vue组件之全局组件与局部组件的使用详解
Oct 09 Javascript
p5.js实现故宫橘猫赏秋图动画
Oct 23 Javascript
es6 for循环中let和var区别详解
Jan 12 Javascript
vue使用watch监听属性变化
Apr 30 Vue.js
javascript中定义类的方法详解
Feb 10 #Javascript
JavaScript判断浏览器类型的方法
Feb 10 #Javascript
javascript定时器完整实例
Feb 10 #Javascript
jQuery搜索子元素的方法
Feb 10 #Javascript
jQuery搜索同辈元素方法
Feb 10 #Javascript
Jquery搜索父元素操作方法
Feb 10 #Javascript
jQuery表单域属性过滤器用法分析
Feb 10 #Javascript
You might like
8个出色的WordPress SEO插件收集
2011/02/26 PHP
通过PHP修改Linux或Unix口令的方法分享
2012/01/30 PHP
PHP大批量插入数据库的3种方法和速度对比
2014/07/08 PHP
php编写批量生成不重复的卡号密码代码
2015/05/14 PHP
基于thinkPHP框架实现留言板的方法
2016/10/17 PHP
php生成图片缩略图功能示例
2017/02/22 PHP
三个思路解决laravel上传文件报错:413 Request Entity Too Large问题
2017/11/13 PHP
Javascript和HTML5利用canvas构建Web五子棋游戏实现算法
2013/07/17 Javascript
Document:getElementsByName()使用方法及示例
2013/10/28 Javascript
基于javascript实现判断移动终端浏览器版本信息
2014/12/09 Javascript
jQuery搜索子元素的方法
2015/02/10 Javascript
简单学习JavaScript中的for语句循环结构
2015/11/10 Javascript
ES6中Generator与异步操作实例分析
2017/03/31 Javascript
深度了解vue.js中hooks的相关知识
2019/06/14 Javascript
javascript合并两个数组最简单的实现方法
2019/09/14 Javascript
如何在 Vue 中使用 JSX
2021/02/14 Vue.js
python网络编程之TCP通信实例和socketserver框架使用例子
2014/04/25 Python
python实现简单的计时器功能函数
2015/03/14 Python
Python实现的科学计算器功能示例
2017/08/04 Python
python操作excel的包(openpyxl、xlsxwriter)
2018/06/11 Python
修改 CentOS 6.x 上默认Python的方法
2019/09/06 Python
python manage.py runserver流程解析
2019/11/08 Python
PyTorch的自适应池化Adaptive Pooling实例
2020/01/03 Python
解决PyCharm无法使用lxml库的问题(图解)
2020/12/22 Python
css3实现信纸/同学录效果的示例代码
2018/12/11 HTML / CSS
英国殿堂级有机护肤品牌:Rodial
2017/04/17 全球购物
南非最大的花卉和送礼服务:NetFlorist
2017/09/13 全球购物
介绍一下HDLC(High-Level Data Link Control)高层数据链路协议
2012/01/21 面试题
三八节主持词
2014/03/17 职场文书
仓库管理计划书
2014/05/04 职场文书
房屋租赁委托书范本
2014/10/04 职场文书
情侣之间的道歉短信
2015/05/12 职场文书
学校运动会简讯
2015/07/20 职场文书
女人创业励志语录,句句蕴含能量,激发你的潜能
2019/08/20 职场文书
java如何实现获取客户端ip地址的示例代码
2022/04/07 Java/Android
kubernetes集群搭建Zabbix监控平台的详细过程
2022/07/07 Servers