最近在项目上用layui框架后台iframe版,遇到的一些问题分享:

1.项目的左侧菜单点击对应的子菜单能自动刷新问题。

2.除了在左侧有菜单,还需要在右侧需要一个菜单(跳转到新页面),并且能够伸缩自适应。

基于以上两个点:先简单的画个草图(场景)

直接用layui的模板是不符合项目需求的。现在先回答第一个问题的处理:

之前在网上看到对于左侧菜单刷新问题都是不符合:

eg:layui的底层js,一般就是admin.js里面找到tabChange方法去处理,试了没找到,直接跳过。百度上可以自行查找很多,这里就不一 一说明。以下只是针对自己在项目上遇到的问题处理方案

用到的layui.js版本:layui-v2.4.3 。

1.对于刷新问题,可以在对应的官方文档中找到:利用element.on()可以监听导航事件,在callback中处理自己相关的业务既可。

2.需要在右侧添加一个菜单,开始的思路:直接给主体内容和右侧菜单赋予一定比例的百分比,通过js去控制切换,尝试后左右两侧点击操作后不能自适应屏幕,不行在换一思路,不服就干。继续干,,,,

查找后还是无果,咋办呢,项目需要,不另想办法处理是不行的啦。。。。。。

最后只能是出大招了。。。。。。。!!!!!!!!!

请看官方的demo是这样的

我稍作修改,就可以自适应啦

在右侧菜单你可能需要做一个伸缩的功能,可能会遇到一个坑:layui 中点击切换伸缩,有时候会无效的问题。

无效问题:

//使用此点击事件失效
$(".类名").on('click', function() {
alert('响应点击事件');
});
//将指定的事件绑定在document上,而新产生的元素如果符合指定的元素,那就触发此事件
 $(document).on('click', '.类名',function () {
   点击后需要做什么,添加class或者其他
    if(条件){ // 判断了是否展开了?还是收起了?
      // 存在进行的操作
    ....
    } else {
     // 不存在该干嘛
  .....
    }
  });

右侧菜单的其他就不贴出,贴出点击例子:

 $(document).on('click', '.shrinkage',function () {
    $(".right-nav").toggleClass("lvc-close");
    $(".right-side-menu").toggleClass("small-ul");
    if($("#lvc-nav").hasClass('lvc-close')){
      $(".layui-layout-admin .layui-body ").css("right","50px");
      $(".right-nav").css("width","49px");
    } else {
      $(".layui-layout-admin .layui-body ").css("right","150px");
      $(".right-nav").css("width","115px");
    }
  });
第二点的问题处理不仅实现了左右两侧点击后能自适应,跟之前的效果完美贴合,不需要过多代码处理,哈哈哈哈哈哈哈哈哈哈
@
@
@
@
@
写作不易,记录遇到点滴,有问题可以一起交流,欢迎留言,,,,,不足之处,提出意见,共同进步!!!!!!

layui菜单点击刷新,自适应的更多相关文章

  1. Maven问题总结:Eclipse中项目右键菜单中点击Maven->Update Projects时JDK被重置

    Eclipse中在项目右键菜单点击->Maven->Update Projects时,JDK总是切回 1.5 如果没有在Maven中配置过JDK版本,只是在Eclipse中项目的Prope ...

  2. jQuery实现菜单点击隐藏(上下左右)

    canrun <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www. ...

  3. 利用onekeyup即可实现验证码的点击刷新功能

    显示验证码 首先在Home/Controller下创建一个公共控制器PublicController 1 <php2 namespace Home\Controller;3 4 use Thin ...

  4. J2EE如何生成验证码图片和点击刷新验证码

    验证码图片生成步骤 创建BufferedImage对象. 获取BufferedImage的画笔,即调用getGraphics()方法获取Graphics对象. 调用Graphics对象的setColo ...

  5. ThinkPHP 实现验证码渲染、校验、点击刷新

    一.在控制器中写方法,生成验证码,代码如下: /** * 验证码生成 * expire 验证码的有效期(秒) * useImgBg 是否使用背景图片 默认为false * fontSize 验证码字体 ...

  6. Thinkphp5 captcha扩展包安装,验证码验证以及点击刷新

    首先下载 captcha扩展包,↓ 下载附件,解压到vendor目录下: 然后进入application/config.php添加配置信息: //验证码       'captcha'  =>  ...

  7. Thinkphp 验证码点击刷新解决办法

    HTML代码如下: <span> <input type="text" name="code" placeholder="验证码&q ...

  8. [oldboy-django][2深入django]点击刷新验证码

    # 点击更新验证码,只要重新在发送一个请求即可 <img src="/check_code/" onclick="updateCode(this);" w ...

  9. thinkphp3.2 验证码生成和点击刷新验证码

    生成验证码的时候: public function verify_c(){ $Verify = new \Think\Verify(); $Verify->fontSize = 18; $Ver ...

随机推荐

  1. win10好用的桌面工具分享+网盘下载链接

    1.Everything Everything是voidtools开发的一款文件搜索工具,官网描述为“基于名称实时定位文件和目录(Locate files and folders by name in ...

  2. 在php中如何实现cookie即时生效,不用刷新就可以使用

    参考:https://www.jianshu.com/p/0468ef5dbf4d 今天在用php设置cookie的时候,发现cookie如果只是赋值一次的话,要手动刷新一下浏览器才能把数据及时更新, ...

  3. css3--:target选择器称为目标选择器

    :target选择器称为目标选择器,用来匹配文档(页面)的url的某个标志符的目标元素.我们先来上个例子,然后再做分析. 示例展示 点击链接显示隐藏的段落. HTML代码: <h2>< ...

  4. php 判断是否手机端还是pc端

    来自:https://www.cnblogs.com/webenh/p/5621890.html 用手机访问PC端WWW域名的时候,自动判断跳转到移动端,用电脑访问M域名手机网站的时候,自动跳转到PC ...

  5. memcache---mongodb---redis比较

    Memcached的优点: Memcached可以利用多核优势,单实例吞吐量极高,可以达到几十万QPS(取决于key.value的字节大小以及服务器硬件性能,日常环境中QPS高峰大约在4-6w左右). ...

  6. Libra教程之:Libra协议的关键概念

    文章目录 Libra协议 交易和状态 交易详解 账本状态详解 版本数据库 账户 账户地址 Proof 验证节点 存储 Libra协议 Libra协议是Libra区块链的基础,本文主要讲解Libra协议 ...

  7. inotify-tools的inotifywait工具用exclude 和 fromfile 排除指定后缀文件

    今天打算使用 inotify-tool 来对线上程序文件进行监控, 因为有些目录是缓存目录, 所以要进行排除, 同时还要排除一些指定的后缀的文件, 比如 .swp 等 需要递归监控的目录为: /tmp ...

  8. 图论--网络流--最大流 HDU 2883 kebab(离散化)

    Problem Description Almost everyone likes kebabs nowadays (Here a kebab means pieces of meat grilled ...

  9. Redis为什么是单线程的

    一.前言   最近在学习Redis,这篇文章就来简单聊聊一道常考的面试题--Redis为什么是单线程的.废话不多说,直接开始吧. 二.正文 2.1 为什么需要多线程   首先,现在的CPU一般都是由多 ...

  10. CSS设置table样式

    \(\color{purple}{表格是个很重要的东西,让我们来美化一下吧!}\) table{ width:290px;height:300px; border:1px solid black;/* ...