位置: 编程技术 - 正文

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

编辑:rootadmin

推荐整理分享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事件委托原理)

  • 预收账款的税费怎么处理
  • 怎样在电子税务局查询已开发票
  • 奖金个人所得税税率
  • 先包装后销售先销售后包装的消费税处理
  • 国债利息属于免税吗
  • 银行存款余额调节表编制
  • 技术服务费属于哪个商品编码
  • 红字信息表可以开一半吗
  • 个人代人开普票个税怎么算
  • 账簿登记的重要内容
  • 生物性资产折旧吗
  • 小规模纳税人销售不动产适用税率
  • 银行小额贷款是怎么还款的
  • 进项税认证怎么做分录
  • 转账支票支付展览费
  • 开具的增值税专用发票上注明的金额
  • 餐厅的市场
  • 停工损失会计科目
  • 未认证进项税额转出
  • 差旅费税务要求比例
  • 抵押贷款逾期怎么处理抵押物
  • WIN10专业版永久激活
  • 赊销商品应收款
  • 收入记借方
  • linux字体不清晰
  • 在php中,字符串有哪些表示形式
  • 逾期未收回包装物押金税率
  • 收到退回的保证金
  • 不合规发票扣除多少
  • 会计虚假做账
  • php中自定义常量的函数是
  • 企业发生的与日常经营活动无直接关系的各项利得
  • 未达起征点纳税人房产税土地使用税如何缴纳
  • 预付货款账务处理会计分录
  • 一般纳税人未取得增值税专用发票怎么处理
  • 中药饮片适用增值税税率
  • 抄税的步骤
  • Node.js安装过程
  • vue过滤器可以异步吗
  • rcnn系列详解
  • 可供分配利润是留存收益吗
  • 当月未付款算在次月吗
  • 帝国cms自动推送插件
  • java8 (jdk 1.8) 新特性——Lambda
  • 如何修改php网页内容
  • 低值易耗品如何界定
  • 代收往来款的会计分录
  • sql server触发器的作用
  • ibm.data.db2
  • sqlserver数据库版本号怎么查
  • 宣告分配现金股利和股票股利的区别
  • 固定资产清理是什么账户
  • 计提未发生的费用
  • 代开专票作废退税怎么做账?
  • 一般纳税人增值税减免政策2023
  • 应收账款多出来的钱记到什么科目
  • 财务费用包括什么项目
  • 挂其他应付款的帐怎么冲平
  • 赠送的产品怎么算成本
  • 收到是怎么写
  • 64位Vista、Windows7系统IIS连接数据库故障完美解决
  • 硬盘安装在机箱内,属于主机的组成部分
  • ubuntu无法正常开机
  • win8.1安装过程
  • freebsd 安装
  • Windows虚拟机怎么打开
  • adobe windows7
  • QuiteRSS: Linux桌面的RSS阅读器 你值得拥有
  • cocos2dx 3.0 beta android环境配置
  • jquery实现仿新浪微博带动画效果弹出层代码(可关闭、可拖动)
  • Android游戏开发实践指南
  • linux命令行常用操作
  • 自定义标签的开发的3个步骤?
  • javascript怎么学
  • mysql数据类型大全
  • python字典常用操作
  • jquery foreach循环
  • 国家税务总局宁夏回族自治区税务局
  • 电子税务局讲解
  • 企业税收有哪些税种
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设