位置: 编程技术 - 正文

JQuery组件基于Bootstrap的DropDownList(完整版)(jquery.browser)

发布时间:2024-02-27

推荐整理分享JQuery组件基于Bootstrap的DropDownList(完整版)(jquery.browser),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:如何使用jquery插件,jquery组件化,jquery.browser,jquery ui组件,jquery.browser,jquery.browser,jquery ui组件,jquery 组件封装,内容如对您有帮助,希望把文章链接给更多的朋友!

在前文 创建基于Bootstrap的下拉菜单的DropDownList的JQuery插件 中,实现了DropDownList的JQuery组件,但是留有遗憾。就是当下拉菜单出现滚动条的时候,滚动条会覆盖菜单右侧的两个圆角。使得下拉菜单左侧有2个圆角,右侧没有,看上去不是很完美。如下图所示:

本文的内容就是如何恢复右侧的圆角

先看看原本的下拉菜单的HTML结构:

从上面的结构可以看出,由ul标签实现下拉菜单的外观(通过引用dropdown-menu样式),由li标签实现菜单项(包括菜单、分隔符、组标题)。来看看ul和li标签对应的CSS:

由于a的样式是通过.dropdown-menu > li > a来实现的,故要实现a的外观必须是在含有样式dropdown-menu的ul里面的li的里面的a的。

于是,动了一个念头,在HTML结构里的ul里面的li里再嵌套一个包含样式dropdown-menu的ul,ul里面是li,li里面是a。

JQuery组件基于Bootstrap的DropDownList(完整版)(jquery.browser)

但是从上面的CSS可以看出,嵌套在里面的ul也会实现菜单的外观(圆角、投影、浮动等),故在该ul的标签里强制添加style属性,把一些样式强制性的去除(改成inherit,采用默认样式),这些样式包括display、position、top、float、padding、border、border-radius、-webkit-box-shadow、box-shadow。

再说说MaxHeight。本次修改后直接采用CSS的样式max-height,而减少对菜单高度的判断。会有疑问,如果浏览器不支持max-height怎么办?一是不支持max-height的浏览器比较少(IE6等),二是如果浏览器不支持max-height,也就不能很好的支持Bootstrap。故不必考虑浏览器是否支持max-height属性。由于里外有2个ul标签,我们需要对里面的ul标签应用max-height属性,故用UL=Obj.find("ul[style]")语句来找寻里面的ul标签(因为里面的ul含有style属性,而外面的ul没有)。

再说说JQuery的height方法。当调用JQuery的height方法来计算隐藏元素高度时,估计是先会显示元素,然后计算高度,再隐藏元素。这会有两个问题。一是显示再隐藏,速度很快,肉眼看不出,但是浏览器不会说谎,有时浏览器会额外显示滚动条。二是如果该元素的父元素也是隐藏的,则height方法会返回0。

完善版的源代码:

样张:

这样通过两层的ul实现了下拉菜单,并且滚动条也没有覆盖右侧的两个圆角。较之上个版本,比较完善。

如果大家还想深入学习,可以点击这里进行学习,再为大家附3个精彩的专题:

Bootstrap学习教程

Bootstrap实战教程

Bootstrap插件使用教程

标签: jquery.browser

本文链接地址:https://www.jiuchutong.com/biancheng/385840.html 转载请保留说明!

上一篇:jQuery的Each比JS原生for循环性能慢很多的原因(jquery中的each方法)

下一篇:jQuery事件委托之Safari(jquery事件委托原理)

  • 个人出租房屋的个人所得税税率
  • 综合税率的计算方法是什么
  • 支付的各项税费现金流量表怎么填
  • 收到返款计入什么科目
  • 向境外个人支付咨询费如何算税
  • 移动话费可以开企业发票吗
  • 私人企业利润怎么分配?
  • 税务外管证取消了吗
  • 哪些会计科目借方记增加
  • 法人资本个人资本
  • 财政补助收入怎么结转
  • 付现金给别的公司是否可以开具发票呢?
  • 同一个客户有应收也有应付怎么办
  • 审计人员用餐费用
  • 咨询案例模板
  • 计提费用的时候可以计提税金吗
  • 收到的借款利息计入什么科目
  • 会展企业的作用有哪些
  • 小微企业的特点及经营模式举例
  • 支票存根没有进账怎么办
  • 公司停产检修2天扣年假
  • 企业年金基金投资管理人应当履行什么职责
  • 小规模纳税人进项税额怎么算
  • 新公司没收入之前费用都走开办费吗
  • 建筑单位没有资质可以承包项目吗
  • 公司二手车转个人
  • 房地产开发企业涉及哪些税
  • PHP:imagecopymergegray()的用法_GD库图像处理函数
  • 微信小程序分包加载
  • php基本框架
  • 境外支付佣金代扣代缴增值税
  • 社保缴费工资和实发工资不一样
  • 谷歌浏览器被hao123锁定改不了
  • js javascript
  • 矿山征收
  • 新合同旧合同的法律依据
  • 新版发票填开操作流程
  • 工程物资进项税额转出
  • 预提的费用当年必须冲掉吗
  • 收据和发票有什么用
  • 小规模纳税人附加税减免政策2023
  • 民办非盈利组织注销了在哪登报
  • 药店医保收入如何查询
  • 开发票货款未公对公转如何做账?
  • 商标 入账
  • 小规模纳税人租赁发票税率是多少
  • 基本户有什么用
  • 个体工商户是否要交税
  • 发票报销流程和条件
  • 哪些会计凭证可以抵扣进项税
  • 企业如何建账之类的账目
  • 商业企业批发商是什么
  • sql Server 触发器的when的用法
  • Mysql 1864 主从错误解决方法
  • win10如何固定桌面图标
  • linux十大常用软件
  • freebsd启动网卡
  • win7开机显示黑屏
  • win10开始无法打开
  • win7定时关机没反应
  • windows 10预览版
  • win10升级20h
  • 五个常用的说明方法
  • linux启动后出现grub
  • cad2007字体怎么调大小
  • w10系统如何
  • linux一共多少命令
  • [置顶]bilinovel
  • linux shell脚本编程入门
  • 用python编写程序
  • django pypi
  • unity二段跳
  • javascript入门教学
  • jquery easyui有哪些特点
  • 如何让listview提高效率
  • android:exported 属性详解
  • multiset volatile
  • 全国残疾人工作先进个人
  • 机构改革哪个单位负责
  • 出口退税需要哪些单据
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号