jquery插件实现悬浮的菜单


Posted in jQuery onApril 24, 2021

每天学一个jquery插件-悬浮的菜单,供大家参考,具体内容如下

悬浮的菜单

又是一个很常见的效果,用上了a标签的一个常见的特性-锚点

效果如下

jquery插件实现悬浮的菜单

代码部分

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>悬浮的菜单</title>
  <script src="js/jquery-3.4.1.min.js"></script>
  <style>
   *{
    margin: 0px;
    padding: 0px;
    user-select: none;
   }
   .item{
    border: 1px solid lightgray;
    margin: 10px;
    height: 400px;
    border-radius: 5px;
    position: relative;
   }
   .head{
    background-color: lightgray;
    height: 30px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    text-indent: 10px;
    position: absolute;
    top: 0px;
    width: 100%;
   }
   .fbox{
    position: fixed;
    top: 20%;
    bottom: 20%;
    right: 20px;
    width: 150px;
    border: 1px solid lightgray;
    background-color: white;
    border-radius: 5px;
   }
   .main{
    position: absolute;
    top: 30px;
    width: 100%;
    bottom: 0px;
    overflow: auto;
   }
   .main ul{
    margin-left: 30px;
   }
   a{
    color: gray;
   }
  </style>
 </head>
 <body>
 </body>
</html>
<script>
 $(document).ready(function(){
  //添加测试dom,产生测试数据
  var arr = [];
  for(var i = 0;i<50;i++){
   var id = 'id'+i;
   var $dom = $("<div class='item' id='"+id+"'><div class='head'>"+id+"</div></div>");
   $dom.appendTo($("body"));
   arr.push(id);
  }
  //调用方法
  $.fmenu(arr);
 })
 $.extend({
  fmenu:function(arr){
   $(".fbox").remove();
   var $fbox = $("<div class='fbox'></div>");
   var $head  =$("<div class='head'>悬浮菜单</div>");
   var $main = $("<div class='main'></div>");
   var $ul = $("<ul class='ul'></ul>")
   $ul.appendTo($main);
   $head.appendTo($fbox);
   $main.appendTo($fbox);
   $fbox.appendTo($("body"));
   arr.forEach(item=>{
    var $li = $("<li><a href='#"+item+"'>"+item+"</a></li>");
    $li.appendTo($ul);
   })
  }
 })
</script>

思路解释

  • a标签不只是用来做超链接用的,其实还可以用来做下载文件的通道,也可以用来做文档位置的导航
  • 就比如你的某一组属性是个在当前页面中查得到的,比如#id 、.class,按照选择器的方式来,用js来做就是拿到选择的这个路径然后获得他的文档高度,再让浏览器滚动到对应的高度。
  • 而a.href直接等于选择的对象就可以直接锚点定位到对应的位置。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

jQuery 相关文章推荐
jquery submit()不能提交表单的解决方法
Apr 24 jQuery
利用jQuery异步上传文件的插件用法详解
Jul 19 jQuery
使用jquery的jsonp如何发起跨域请求及其原理详解
Aug 17 jQuery
jqueryUI tab标签页代码分享
Oct 09 jQuery
jQuery实现html双向绑定功能示例
Oct 09 jQuery
springmvc接收jquery提交的数组数据代码分享
Oct 28 jQuery
详解jQuery中的getAll()和cleanData()
Apr 15 jQuery
jQuery表单选择器用法详解
Aug 22 jQuery
Javascript和jquery在selenium的使用过程
Oct 31 jQuery
jquery实现直播视频弹幕效果
Feb 25 jQuery
jQuery实现二级导航菜单的示例
Sep 30 jQuery
jQuery ajax - getScript() 方法和getJSON方法
May 14 jQuery
jquery插件实现代码雨特效
Apr 24 #jQuery
jquery插件实现搜索历史
Apr 24 #jQuery
jquery插件实现图片悬浮
jQuery实现影院选座订座效果
jQuery class属性操作addClass()与removeClass()、hasClass()、toggleClass()
jQuery treeview树形结构应用
Mar 24 #jQuery
jQuery实现鼠标拖动图片功能
Mar 04 #jQuery
You might like
PHP 木马攻击防御技巧
2009/06/13 PHP
PHP中foreach()用法汇总
2015/07/02 PHP
Cygwin中安装PHP方法步骤
2015/07/04 PHP
PHP记录页面停留时间的方法
2016/03/30 PHP
PHP封装的非对称加密RSA算法示例
2018/05/28 PHP
PHP递归算法的简单实例
2019/02/28 PHP
MC Dialog js弹出层 完美兼容多浏览器(5.6更新)
2010/05/06 Javascript
ajax处理php返回json数据的实例代码
2013/01/24 Javascript
可选择和输入的下拉列表框示例
2013/11/05 Javascript
JSP中使用JavaScript动态插入删除输入框实现代码
2014/06/13 Javascript
基于HTML模板和JSON数据的JavaScript交互(移动端)
2016/04/06 Javascript
Nodejs 发送Post请求功能(发短信验证码例子)
2017/02/09 NodeJs
详解puppeteer使用代理
2018/12/27 Javascript
Vue  webpack 项目自动打包压缩成zip文件的方法
2019/07/24 Javascript
jQuery 动态粒子效果示例代码
2020/07/07 jQuery
小程序点餐界面添加购物车左右摆动动画
2020/09/23 Javascript
[56:18]DOTA2上海特级锦标赛主赛事日 - 4 败者组第四轮#2 MVP.Phx VS Fnatic第二局
2016/03/05 DOTA
python使用cStringIO实现临时内存文件访问的方法
2015/03/26 Python
python监控文件或目录变化
2016/06/07 Python
深入解析Python中的__builtins__内建对象
2016/06/21 Python
用生成器来改写直接返回列表的函数方法
2017/05/25 Python
分析Python读取文件时的路径问题
2018/02/11 Python
Python Web静态服务器非堵塞模式实现方法示例
2019/11/21 Python
《长城和运河》教学反思
2014/04/14 职场文书
小学生纪念九一八事变演讲稿
2014/09/14 职场文书
个人学习总结范文
2015/02/15 职场文书
2015年公务员个人工作总结
2015/04/24 职场文书
农业项目合作意向书
2015/05/08 职场文书
教师专业技术工作总结2015
2015/05/13 职场文书
实践论读书笔记
2015/06/29 职场文书
网络舆情信息简报
2015/07/21 职场文书
学校运动会开幕词
2016/03/03 职场文书
SQL中的三种去重方法小结
2021/11/01 SQL Server
Python Pygame实战在打砖块游戏的实现
2022/03/17 Python
使用refresh_token实现无感刷新页面
2022/04/26 Javascript
Nginx配置之禁止指定IP访问
2022/05/02 Servers