在使用bootstrap制作后台时用到了响应式导航条,其中dropdown组件更是用的比较多,用的多需要点击的就多,dropdown默认鼠标左键单击才展开,如果使用鼠标放上去(hover)就展开则会省去点击时间,这样能提高效率。
原本的改造思路是:给dropdown元素绑定hover事件,hover上去的时候,执行该元素的click事件——即把hover同步为click,hover即为click。
但想到与其自己来改造,不如先在网上搜索搜索看看有没有现成的插件,果不其然就搜索到了,托管在github上的代码网址:查看
在这儿就直接把代码复制出来:
;(function($, window, undefined) { // outside the scope of the jQuery plugin to // keep track of all dropdowns var $allDropdowns = $(); // if instantlyCloseOthers is true, then it will instantly // shut other nav items when a new one is hovered over $.fn.dropdownHover = function(options) { // the element we really care about // is the dropdown-toggle's parent $allDropdowns = $allDropdowns.add(this.parent()); return this.each(function() { var $this = $(this).parent(), defaults = { delay: 500, instantlyCloseOthers: true }, data = { delay: $(this).data('delay'), instantlyCloseOthers: $(this).data('close-others') }, options = $.extend(true, {}, defaults, options, data), timeout; $this.hover(function() { if(options.instantlyCloseOthers === true) $allDropdowns.removeClass('open'); window.clearTimeout(timeout); $(this).addClass('open'); }, function() { timeout = window.setTimeout(function() { $this.removeClass('open'); }, options.delay); }); }); }; $('[data-hover="dropdown"]').dropdownHover(); })(jQuery, this);
可以看到作者在插件前面加了个分号;,增加了插件的兼容性,因为可能上一个js代码没写;,如果在此不加分号则可能因为没换行导致js出错。
插件支持HTML元素data-*传参,也支持初始化传参。将此js代码放在bootstrap原本的js代码后面执行即可。
以上所述是小编给大家介绍的Bootstrap中的Dropdown下拉菜单更改为悬停(hover)触发,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!
问题内容: 好的,所以我需要的很简单。 我已经在导航栏中设置了一些下拉菜单(使用),并且工作正常。 问题是它可以工作“ ”,而我希望它可以工作“ ”。 有内置的方法吗? 问题答案: 最简单的解决方案是使用CSS。添加类似…
下拉选择。 Usage 全部引入 import { Dropdown } from 'beeshell'; 按需引入 import { Dropdown } from 'beeshell/dist/modules/Dropdown'; Examples Code 详细 Code import { Dropdown } from 'beeshell'; <Dropdown ref={(c)
Toggle contextual overlays for displaying lists of links and more with the LCUI dropdown component. Overview Dropdowns are toggleable, contextual overlays for displaying lists of links and more. They’
Dropdown 下拉菜单 1.6.3 平台差异说明 App H5 微信小程序 支付宝小程序 百度小程序 头条小程序 QQ小程序 √ √ √ √ √ √ √ 基本使用 使用前说明: 该组件必须结合u-dorpdown和u-dropdown-item一起使用,展开的内容由u-dropdown-item通过传递参数或者slot提供 组件的菜单栏标题由u-dropdown-item通过title参数提供
将动作或菜单折叠到下拉菜单中。 基础用法 移动到下拉菜单上,展开更多操作。 通过组件slot来设置下拉触发的元素以及需要通过具名slot为dropdown 来设置下拉菜单。默认情况下,下拉按钮只要hover即可,无需点击也会显示下拉菜单。 <el-dropdown> <span class="el-dropdown-link"> 下拉菜单<i class="el-icon-arrow-
Dropdown 下拉菜单 将动作或菜单折叠到下拉菜单中。 基础用法 移动到下拉菜单上,展开更多操作。 :::demo 显示下拉菜单,默认情况下,下拉按钮只要hover即可,无需点击。 render() { return ( <Dropdown menu={( <Dropdown.Menu> <Dropdown.Item>黄金糕</Dropdown.Item
将动作或菜单折叠到下拉菜单中。 基础用法 移动到下拉菜单上,展开更多操作。 数据源 model 需要遵循一定的结构,详见文末的参考 <el-dropdown [model]="data" (selected)="handle($event)"> 下拉菜单 </el-dropdown> <script type="text"> // in component: data: any[] = [{
Dropdown 下拉菜单 将动作或菜单折叠到下拉菜单中。 基础用法 移动到下拉菜单上,展开更多操作。 通过组件slot来设置下拉触发的元素以及需要通过具名slot为dropdown 来设置下拉菜单。默认情况下,下拉按钮只要hover即可,无需点击也会显示下拉菜单。 <el-dropdown> <span class="el-dropdown-link"> 下拉菜单<i class="