元素功能的开启只需要加载element模块即会自动完成,譬如tab选项卡切换、导航菜单滑动切换效果、面包屑导航、进度条等,使用这些小交互功能的前提就是:拥有符合这些小功能的所需正确的HTML结构,以及加载element模块;如下:tab选项卡的使用示例:

  • 网站设置
  • 商品管理
  • 订单管理
内容1
内容2
内容3

加载element模块使得tab选项卡切换生效layui.use('element', function(){

var element = layui.element;

//一些事件监听

element.on('tab(demo)', function(data){

console.log(data);

});

});

通过自定义元素属性来作为元素的功能参数,他们一般配置在容器外层,如:

..........

element模块支持的元素如下表:

属性名

可选值

说明

lay-filter

任意字符

事件过滤器(公用属性),主要用于事件的精确匹配,跟选择器是比较类似的。

lay-allowClose

true

针对于Tab容器,是否允许选项卡关闭。默认不允许,即不用设置该属性

lay-separator

任意分隔符

针对于面包屑容器

基础方法允许你在外部主动对元素发起一起操作,目前element模块提供的方法如下:

方法名

描述

var element = layui.element;

element模块的实例

返回的element变量为该实例的对象,携带一些用于元素操作的基础方法

element.on(filter, callback);

用于元素的一些事件监听

element.tabAdd(filter, options);

用于新增一个Tab选项

参数filter:tab元素的 lay-filter="value" 过滤器的值(value)

参数options:设定可选值的对象,目前支持的选项如下述示例:

element.tabAdd('demo', {

title: '选项卡的标题'

,content: '选项卡的内容' //支持传入html

,id: '选项卡标题的lay-id属性值'

});

element.tabDelete(filter, layid);

用于删除指定的Tab选项

参数filter:tab元素的 lay-filter="value" 过滤器的值(value)

参数layid:选项卡标题列表的 属性 lay-id 的值

element.tabDelete('demo', 'xxx'); //删除 lay-id="xxx" 的这一项

element.tabChange(filter, layid);

用于外部切换到指定的Tab项上,参数同上,如:

element.tabChange('demo', 'layid'); //切换到 lay-id="yyy" 的这一项

element.tab(options);

用于绑定自定义 Tab 元素(即非 layui 自带的 tab 结构)。该方法为 layui 2.1.6 新增

参数options:设定可选值的对象,目前支持的选项如下述示例:

//HTML

  • 标题1
  • 标题2
  • 标题3
内容1
内容2
内容4

//JavaScript

element.tab({

headerElem: '#tabHeader>li' //指定tab头元素项

,bodyElem: '#tabBody>.xxx' //指定tab主体元素项

});

element.progress(filter, percent);

用于动态改变进度条百分比:

element.progress('demo', '30%');

跟表单元素一样,很多时候你的页面元素可能是动态生成的,这时element的相关功能将不会对其有效,你必须手工执行 element.init(type, filter) 方法即可。注意:2.1.6 开始,可以用 element.render(type, filter); 方法替代

第一个参数:type,为表单的type类型,可选。默认对全部类型的表单进行一次更新。可局部刷新的type如下表:

参数(type)值

描述

tab

重新对tab选项卡进行初始化渲染

nav

重新对导航进行渲染

breadcrumb

重新对面包屑进行渲染

progress

重新对进度条进行渲染

collapse

重新对折叠面板进行渲染

element.init(); //更新全部 2.1.6 可用 element.render() 方法替代

element.render('nav'); //重新对导航进行渲染。注:layui 2.1.6 版本新增

//……

第二个参数:filter,为元素的 lay-filter="" 的值。你可以借助该参数,完成指定元素的局部更新。

【HTML】

【JavaScript】

//比如当你对导航动态插入了二级菜单,这时你需要重新去对它进行渲染

element.render('nav', 'test1'); //对 lay-filter="test1" 所在导航重新渲染。注:layui 2.1.6 版本新增

//……

语法:element.on('event(过滤器值)', callback);

element模块在Layui事件机制中注册了element模块事件,所以当你使用layui.onevent()自定义模块事件时,请勿占用element名。目前element模块所支持的事件如下表:

event

描述

tab

监听Tab选项卡切换事件

默认情况下,事件所监听的是全部的元素,但如果你只想监听某一个元素,使用事件过滤器即可。

如:

element.on('tab(test)', function(data){

console.log(data);

});

Tab选项卡点击切换时触发,回调函数返回一个object参数,携带两个成员:

element.on('tab(filter)', function(data){

console.log(this); //当前Tab标题所在的原始DOM元素

console.log(data.index); //得到当前Tab的所在下标

console.log(data.elem); //得到当前的Tab大容器

});

Tab选项卡被删除时触发,回调函数返回一个object参数,携带两个成员:

element.on('tabDelete(filter)', function(data){

console.log(this); //当前Tab标题所在的原始DOM元素

console.log(data.index); //得到当前Tab的所在下标

console.log(data.elem); //得到当前的Tab大容器

});

注:该事件为 layui 2.1.6 新增

当点击导航父级菜单和二级菜单时触发,回调函数返回所点击的菜单DOM对象:

element.on('nav(filter)', function(elem){

console.log(elem); //得到当前点击的DOM对象

});

当折叠面板点击展开或收缩时触发,回调函数返回一个object参数,携带三个成员:

element.on('collapse(filter)', function(data){

console.log(data.show); //得到当前面板的展开状态,true或者false

console.log(data.title); //得到当前点击面板的标题区域DOM对象

console.log(data.content); //得到当前点击面板的内容区域DOM对象

});

你肯定不仅仅是满足于进度条的初始化显示,通常情况下你需要动态改变它的进度值,element模块提供了这样的基础方法:element.progress(filter, percent);。

上述是一个已经设置了过滤器(lay-filter="demo")的进度条

现在你只需要在某个事件或者语句中执行方法:element.progress('demo', '50%');

即可改变进度

layui 如何去dom_常用元素操作 - layui.element相关推荐

  1. layui内置模块(element常用元素操作)

    常用元素操作是个什么鬼,从官方解释简单来说就是在页面中有一些动态的效果,当然不是我们说的动态网页那个动态,这些动态效果呢,就是通过我们去加载element模块以后,默认为页面的这些元素添加的一些动态效 ...

  2. python webdriver 常用元素操作

    1.新建实例 xx_driver = os.path.abspath(r"路径") os.environ["webdriver.xx.driver"] = xx ...

  3. python画菊花_python webdriver 常用元素操作

    1.新建实例 xx_driver = os.path.abspath(r"路径") os.environ["webdriver.xx.driver"] = xx ...

  4. springboot整合layui实现数据表格的分页操作

    第一步,引入依赖文件 <link rel="stylesheet" href="./layui/css/layui.css"> <script ...

  5. Selenium2(WebDriver)总结(五)---元素操作进阶(常用类)

    Selenium2(WebDriver)总结(五)---元素操作进阶(常用类) 1.Alert类 Alert是指windows弹窗的一些操作,需要new一个Alert类 driver.switchTo ...

  6. Layui的基本使用(前端登录操作步骤)

    目录 一.介绍layui 二.Layui相关的基本操作 1.下载Layui网站 :Layui - 经典开源模块化前端 UI 框架 ----------接下来的操作是实现一个Layui前端登录的效果-- ...

  7. 常用cdn jq layui

    https://cdn.staticfile.org/jquery/3.6.1/jquery.min.js https://cdn.staticfile.org/layui/2.7.6/css/lay ...

  8. layui 鼠标移入变为小手_如何在 LayUI 数据表格的列元素上,鼠标悬浮,显示所有文字内容(修改源码)...

    文中使用的LayUI版本:layui-v2.5.5 问题描述: 最近参与开发了 问题分析: 要实现鼠标悬浮显示所有内容,一般采用的都是给对应元素上添加 title 属性,这样当鼠标悬浮在对应列的时候, ...

  9. jQuery—常用API(jQuery 属性操作、jQuery 文本属性值、jQuery 元素操作)

    1. jQuery 属性操作 1.1 设置或获取元素固有属性值 prop() 所谓元素固有属性就是元素本身自带的属性,比如 <a> 元素里面的 href,比如 <input> ...

最新文章

  1. freertos心跳中断_FreeRTOS 在STM32上的移植 V1.0
  2. 温州大学《深度学习》课程课件(十一、序列模型)
  3. c++ enum 枚举类型
  4. ajax获取jsp对象,如何用Ajax传递一个对象集合到jsp页面。
  5. vue element form 表单
  6. python中实现多路分支的最佳控制结构是_哪个选项是实现多路分支的最佳控制结构? (1.3分)_学小易找答案...
  7. freemarker数值格式化
  8. PHP 判断变量是否定义、是否为空、是否为真
  9. c语言编程对电脑配置的要求,请问学习电脑编程需要什么配置的笔记本电脑?价格多少?...
  10. 《阿里云的这群疯子》
  11. Java剑 VS .NET刀 -- 晨袭血战(论模式)(一)【推荐】
  12. php 使用内置web服务器
  13. 【翻译论文】 Supervised Parametric Classification of Aerial LiDAR Data(2004)
  14. docker网络的配置
  15. Mysql日常巡检参考(持续更新)
  16. 前世今生的痴,问谁可以洞悉
  17. [论文阅读笔记44]Named Entity Recognition without Labelled Data:A Weak Supervision Approach
  18. 注册网站域名多少钱_注册一个域名多少钱一年
  19. 数据库的增删查改(全部重点知识一篇整合,包括数据库查询的进阶内容)
  20. js对JSON的操作

热门文章

  1. QT事件过滤器eventFilter函数
  2. Scrapy 下载器 中间件(Downloader Middleware)
  3. Spring Data JPA 从入门到精通~关键字列表
  4. python分类下取得所有子类_如何找到给定名称的类的所有子类?
  5. 多个线程访问统一对象的不同方法_分析| 你未必真的了解线程安全,别骗自己,来看下怎么实现线程安全...
  6. android menuitem 字体颜色,安卓更改Menu的字体颜色(使用actionLayout,适用于多个fragment)...
  7. .net 开发怎么实现前后端分离_ASP.NET Core模块化前后端分离快速开发框架介绍
  8. vue如何输出一个值_如何利用vue获取当前点击的元素并传值(图文教程) -
  9. JAVA入门级教学之(package和import)
  10. JAVA入门级教学之(内存中的空指针异常)