2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > html css 多选下拉框 jQuery多选下拉框插件

html css 多选下拉框 jQuery多选下拉框插件

时间:2019-10-17 12:06:20

相关推荐

html css 多选下拉框 jQuery多选下拉框插件

jquery.multi-select.js是一款jQuery多选下拉框插件。该插件可以将select元素转换为带checkbox的多选下拉框,非常实用。

使用方法

在页面中引入下面的文件。

lt;link rel="stylesheet" type="text/css" href="./src/example-styles.css"gt;

lt;script src="js/jquery.min.js" type="text/javascript"gt;lt;/scriptgt;

lt;script type="text/javascript" src="./src/jquery.multi-select.js"gt;lt;/scriptgt;

HTML结构

lt;select id="languages" name="languages" multiplegt;

lt;option value="JavaScript"gt;JavaScriptlt;/optiongt;

lt;option value="C++"gt;C++lt;/optiongt;

lt;option value="Python"gt;Pythonlt;/optiongt;

lt;option value="Ruby"gt;Rubylt;/optiongt;

lt;option value="PHP"gt;PHPlt;/optiongt;

lt;option value="Pascal"gt;Pascallt;/optiongt;

lt;/selectgt;

初始化插件

$('#languages').multiSelect();

CSS样式

.multi-select-container {

display: inline-block;

position: relative;

}

.multi-select-menu {

position: absolute;

left: 0;

top: 0.8em;

float: left;

min-width: 100%;

background: #fff;

margin: 1em 0;

padding: 0.4em 0;

border: 1px solid #aaa;

box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);

display: none;

}

.multi-select-menu input {

margin-right: 0.3em;

vertical-align: 0.1em;

}

.multi-select-button {

display: inline-block;

font-size: 0.875em;

padding: 0.2em 0.6em;

max-width: 20em;

white-space: nowrap;

overflow: hidden;

text-overflow: ellipsis;

vertical-align: -0.5em;

background-color: #fff;

border: 1px solid #aaa;

border-radius: 4px;

box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);

cursor: default;

}

.multi-select-button:after {

content: "";

display: inline-block;

width: 0;

height: 0;

border-style: solid;

border-width: 0.4em 0.4em 0 0.4em;

border-color: #999 transparent transparent transparent;

margin-left: 0.4em;

vertical-align: 0.1em;

}

.multi-select-container--open .multi-select-menu { display: block; }

.multi-select-container--open .multi-select-button:after {

border-width: 0 0.4em 0.4em 0.4em;

border-color: transparent transparent #999 transparent;

}

配置参数

$('#languages').multiSelect({

// 自定义HTML模板

'containerHTML': 'lt;div class="multi-select-container"gt;',

'menuHTML': 'lt;div class="multi-select-menu"gt;',

'buttonHTML': 'lt;span class="multi-select-button"gt;',

'menuItemsHTML': 'lt;div class="multi-select-menuitems"gt;',

'menuItemHTML': 'lt;label class="multi-select-menuitem"gt;',

'presetsHTML': 'lt;div class="multi-select-presets"gt;',

// sets some HTML (eg: lt;div class="multi-select-modal"gt;) to enable the modal overlay.

'modalHTML': undefined,

// Active CSS class

'activeClass': 'multi-select-container--open',

// Text to show when no option is selected

'noneText': '-- Select --',

// Text to show when all options are selected

'allText': undefined,

// an array of preset option groups

'presets': undefined,

// CSS class added to the container, when the menu is about to extend beyond the right edge of the position Menu Within element

'positionedMenuClass': 'multi-select-container--positioned',

// If you provide a jQuery object here, the plugin will add a class (see positionedMenuClass option) to the container when the right edge of the dropdown menu is about to extend outside the specified element, giving you the opportunity to use CSS to prevent the menu extending, for example, by allowing the option labels to wrap onto multiple lines.

'positionMenuWithin': undefined,

// The plugin will attempt to keep this distance, in pixels, clear between the bottom of the menu and the bottom of the viewport, by setting a fixed height style if the menu would otherwise approach this distance from the bottom edge of the viewport.

'viewportBottomGutter': 20,

// minimal height

'menuMinHeight': 200

});

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。