zoukankan      html  css  js  c++  java
  • 学习layui

    -----初识layui

    Layui兼容除IE6/7以外的全部浏览器,并且绝大多数结构支持响应式;

    获得layui后,将其完整地部署到你的项目目录(或静态资源服务器),你只需要引入下述两个文件:

    • ./layui/css/layui.css
    • ./layui/layui.js

    我们更推荐你遵循Layui的模块规范,建立一个自己的模块作为入口:

    1. <script>
    2. layui.config({
    3. base: '/res/js/modules/' //你的模块目录
    4. }).use('index'); //加载入口
    5. </script>

    上述的 index 即为你 /res/js/modules/ 目录下的 index.js,它的内容应该如下:

    • /**
    • 项目JS主入口
    • 以依赖Layui的layer和form模块为例
    • **/
    • layui.define(['layer', 'form'], function(exports){
    • var layer = layui.layer
    • ,form = layui.form();
    • layer.msg('Hello World');
    • exports('index', {}); //注意,这里是模块输出的核心,模块名必须和use时的模块名一致
    • });

    -----全局配置,模块定义

    你可以在使用组件之前,全局化配置一些参数,

    • layui.config({
    • dir: '/res/layui/' //layui.js 所在路径(注意,如果是script单独引入layui.js,无需设定该参数。),一般情况下可以无视
    • ,version: false //一般用于更新组件缓存,默认不开启。设为true即让浏览器不缓存。也可以设为一个固定的值,如:201610
    • ,debug: false //用于开启调试模式,默认false,如果设为true,则JS模块的节点会保留在页面
    • ,base: '' //设定扩展的Layui组件的所在目录,一般用于外部组件扩展
    • });

    方法:layui.define([mods], callback)

    通过该方法可定义一个 Layui模块。参数mods是可选的,用于声明该模块所依赖的模块。callback即为模块加载完毕的回调函数,它返回一个exports参数,用于输出该模块的接口。

    • layui.define(function(exports){
    • //do something
    • exports('demo', function(){
    • alert('Hello World!');
    • });
    • });

    方法:layui.use([mods], callback)

    Layui的内置模块并非默认就加载的,他必须在你执行该方法后才会加载。它的参数跟上述的 define方法完全一样。 
    另外请注意,mods里面必须是一个合法的模块名,不能包含目录。如果需要加载目录,建议采用extend建立别名(详见组件规范)

    • layui.use(['laypage', 'layedit'], function(){
    • var laypage = layui.laypage
    • ,layedit = layui.layedit;
    • //do something
    • });

    该方法的函数其实返回了所加载的模块接口,所以你其实也可以不通过layui对象赋值获得接口

    • layui.use(['laypage', 'layedit'], function(laypage, layedit){
    • //使用分页
    • laypage();
    • //建立编辑器
    • layedit.build();
    • });

    方法:layui.link(href)

    href即为css路径。注意:该方法并非是你使用Layui所必须的,它一般只是用于动态加载你的外部CSS文件。

    方法:layui.device(key),参数key是可选的

    由于Layui的一些功能进行了兼容性处理和响应式支持,因此该方法同样发挥了至关重要的作用。尤其是在layui mobile模块中的作用可谓举足轻重。该方法返回了丰富的设备信息:

    • var device = layui.device();
    • //device即可根据不同的设备返回下述不同的信息
      1. {
      2. os: "windows" //底层操作系统,windows、linux、mac等
      3. ,ie: false //ie6-11的版本,如果不是ie浏览器,则为false
      4. ,weixin: false //是否微信环境
      5. ,android: false //是否安卓系统
      6. ,ios: false //是否ios系统
      7. }

    方法/属性

     描述
    layui.cache 静态属性。获得一些配置及临时的缓存信息
    layui.getStyle(node, name) 获得一个原始DOM节点的style属性值,如:layui.getStyle(document.body, 'font-size')
    layui.img(url, callback, error) 图片预加载
    layui.extend(options) 拓展一个模块别名,如:layui.extend({test: '/res/js/test'})
    layui.router() 获得location.hash路由,目前在Layui中没发挥作用。对做单页应用会派上用场。
    layui.hint() 向控制台打印一些异常信息,目前只返回了error方法:layui.hint().error('出错啦')
    layui.each(obj, fn) 对象(Array、Object、DOM对象等)遍历,可用于取代for语句
    layui.stope(e) 阻止事件冒泡
    layui.onevent(modName, events, callback) 自定义模块事件,属于比较高级的应用。有兴趣的同学可以阅读layui.js源码以及form模块
    layui.event(modName, events, params) 执行自定义模块事件,搭配onevent使用

    Layui部分组件依赖jQuery(比如layer),但是你并不用去额外加载jQuery。Layui已经将jQuery最稳定的一个版本改为Layui的内部模块,当你去使用layer的时候,它会首先判断你的页面是否已经引入了jQuery,如果没有,则加载内部的jQuery模块,如果有,则不会加载。

  • 相关阅读:
    day06.2-软链接与硬链接
    day06.1-磁盘管理
    day05.3-Linux进程管理
    day05.2-Vim编辑器
    day05.1-文件归档与压缩
    day04-Linux系统中用户控制及文件权限管理方法
    day03-Linux操作系统目录结构
    day02.2-常用Linux命令整理
    BST_traverse(中序遍历,前序遍历,后序遍历)
    JS_DOM_practice with Pokemon
  • 原文地址:https://www.cnblogs.com/dnf1612/p/6972854.html
Copyright © 2011-2022 走看看