Hui 2.x.js 官方文档

基础方法

 // 判断值是否是指定数据类型
        var result = hui.isTargetType("白签软件", "string");  //=>true
        var result = hui.isTargetType(123, "number");   // =>true
        var result = hui.isTargetType("false", "boolean");  // =>false
// 判断数据类型是否是undefined类型
        var result = hui.isUndefined(undefined);    // =>true
        var result = hui.isUndefined(null); // =>false
// 判断值是否是有效值,非undefined和非null
        var result = hui.isValid("百签软件");   //=>true
        var result = hui.isValid(null); // =>false

  

// 判断是否是数值类型,包括字符串数值
        var result = hui.isNumber("123");   //=>true
        var result = hui.isNumber(456); //=>true
        var result = hui.isNumber("123a");  // false

  

// 判断是否是function类型
        var result = hui.isFunction(function () { });   // =>true

        function get() {
        };
        var result = hui.isFunction(get);   // =>true

        var result = hui.isFunction("abc"); // =>false

  

// 判断是否是boolean类型
        var result = hui.isBoolean(false);  //=>true
        var result = hui.isBoolean(true);   //=>true
        var result = hui.isBoolean("true");    //=>false

  

 // 判断是否是字符串类型
        var result = hui.isString("");  //=>true
        var result = hui.isString("百签软件");  //=>true
        var result = hui.isString(123); // =>false
        var result = hui.isString(null);    // =>false

  

// 判断是否是日期类型
        var result = hui.isDate("2016-08-24");  //=>true
        var result = hui.isDate("2016/08/24");  //=>true
        var result = hui.isDate("2016-2-1");    //=>true
        var result = hui.isDate("2016-08-24 18:06");    //=>true
        var result = hui.isDate("2016-08-24 18:06:25");    //=>true
        var result = hui.isDate("2016/08/24 18:06:25");    //=>true
        var result = hui.isDate("16/08/24");    // =>false
        var result = hui.isDate("08-24");   //=>false

  

  // 判断是否是正数
        var result = hui.isPlusDecimal(1);  //=>true
        var result = hui.isPlusDecimal(-1);  //=>false
        var result = hui.isPlusDecimal(+1);  //=>true
        var result = hui.isPlusDecimal("10");  //=>true

  

// 判断是否是json类型
        var obj = "string";
        var result = hui.isJson(obj);   // =>false

        var obj1 = new String("abc");
        var result = hui.isJson(obj1);   // =>false

        var obj3 = {
            name: "百签软件",
            autor: "百小僧"
        };
        var result = hui.isJson(obj3);   // =>true

        var obj4 = ["百签软件", "百小僧"];
        var result = hui.isJson(obj4);   // =>false

        var obj5 = [{ name: "百签软件", autor: "百小僧" }];
        var result = hui.isJson(obj5);   // =>false

  

 // 判断是否是数组类型
        var arr = ["百签软件", "百小僧"];
        var result = hui.isArray(arr);  //=>true

        var arr1 = new Array(1, 3, 4);
        var result = hui.isArray(arr1); //=>true

        var arr2 = [{ name: "百签软件", autor: "百小僧" }];
        var result = hui.isArray(arr2); //=>true

        var arr3 = [];
        var result = hui.isArray(arr3); //=>true

  

// 判断是否是HTML元素
        var result = hui.isElement(document.body);  //=>true
        var result = hui.isElement(document.getElementById("nav"));  // =>false,如果找到该元素就返回 true

  

// 获取自定义类名称
        function Persion(name, age) {
            this.name = name;
            this.age = age;
        }
        var p = new Persion("百小僧", 23);
        var result = hui.getCustomType(p);  // =>Persion

  

// 获取方法名称,非匿名方法,需传入方法字符串
        var result = hui.getFunctionName("function getName() {}");  // =>getName

  

// 去掉前后空格
        var result = hui.trim(" 百小僧 "); // =>百小僧
        var result = hui.trim(" 百 小僧 ");    // =>百 小僧

  

// 去掉所有空格
        var result = hui.trimAll(" 百 小 僧 ");    // =>百小僧

  

// 判断是api对象是否存在,通常用来判断是否是APICloud的开发环境
        var result = hui.apiExit(); //=>false

        apiready = function () {
            var result = hui.apiExit(); // =>true
        };

        hui.ready = function () {
            var result = hui.apiExit(); // =>true
        };

  

// 将对象序列化成字符串,也就是可以看到内部结构
        var obj = { name: "百签软件", autor: "百小僧" };
        var result = hui.objParse(obj); // =>" { name: "百签软件", autor: "百小僧" }"

  

// 生成唯一 GUID字符串,32位唯一码
        var guid = hui.guid();  // =>abf9a9a2-8ef9-b291-e557-579f8271f3cf

  

// 序列化json对象为url格式
        var obj = { name: "百签软件", autor: "百小僧" };
        var result = hui.serialize(obj);    // =>&name=百签软件&autor=百小僧

  

// 获取变量值对应的格式类型,方法eval调用
        var val = "123";
        var reslut = hui.getValueTypeFormat(val);   // => "123"

  

// 对象拷贝,继承,并返回新的对象,支持深度拷贝
        var a = { name: "百签软件" };
        var b = { autor: "百小僧" };
        var result = hui.deepAssign({}, a, b);  // =>{name:"百签软件",autor:"百小僧"}

        var c = { name: "百签软件", autor: "新生帝" };
        var d = { autor: "百小僧", age: 23 };
        var result = hui.deepAssign({}, c, d);  // =>{name:"百签软件",autor:"百小僧",age:23}

  

DOM操作方法

 // 根据ID名称获取DOM节点
        var header = hui.byId("header");

  

// 根据class属性名称获取DOM节点
        var footers = hui.byClassName("hui-footer");

  

// 根据标签名称获取DOM节点
        var elements = hui.byTagName("<div>");

  

 // 模仿jQuery $ 选择器语法,不同的是,hui.js总是返回数组类型
        var header = hui.$("header")[0];
        var divs = hui.$("div");
        var txt = hui.$("input[type=‘text‘]");

  

 // 获取单个DOM节点
        var header = hui.single("header");

  

// 获取第一个DOM节点
        var div = hui.first("div.nav");

  

// 获取最后一个DOM节点
        var li = hui.last("ul li");

  

// 查找指定DOM元素
        var header = hui.find(document.body, ".nav");

  

// 获取css属性的值
        var val = hui.getCss(document.body, "margin-left");   // =>0px

  

// 获取DOM元素的偏移量
        var offsetObj = hui.offset(hui.single("header"));   // => { t:0,l:0,w:320,h:44}

  

载入Link import 标签定义的模板

 /*
         * 载入link import模板
         * 输入参数:
         * templateSelectors:link 模板内容选择器
         * targetSelectors:载入模板之后追加到指定DOM元素中
         */
        hui.LoadLinkTppl(".tppl", document.body);

  

Javascript模板引擎

<!--定义模板,<% %> 包裹Javascript代码,<%= %> 输出变量 -->
    <script type="text/html" id="tppl">
        <% for(var i=0; i < list.length;i++){ %>
        <li>名称:<%=list[i].name %></li>
        <%} %>
    </script>

    <script type="text/javascript">
        // 定义数据集合,必须是json类型
        var data = {
            list: [
                {
                    name: "百签软件",
                    autor: "百小僧",
                    age: 23
                }
            ]
        };
        // 调用hui.tppl(tpl,data); 返回渲染之后的HTML,不能重复渲染多个数据集合
        var html = hui.tppl(document.getElementById("tppl"), data);

        // 同时也可以这样调用
        var render = hui.tppl(document.getElementById("tppl"));
        var html = render(data);
        // 可以载入不同的数据渲染同一套模板
        var html2 = render({
            list: [
                {
                    name: "Hui 2.x",
                    autor: "百小僧"
                }
            ]
        });
    </script>

  

时间: 2024-10-25 03:48:32

Hui 2.x.js 官方文档的相关文章

ArcGIS API For JS官方文档解析教程

ArcGIS API For JavaScript(八)之Arcade ArcGIS API For JavaScript官方文档(一)之关于API ArcGIS API For JavaScript官方文档(一)之默认API配置 ArcGIS API For JavaScript官方文档(七)之编辑 ArcGIS API For Javascript官方文档(三)之从Web服务器取回数据 ArcGIS API For JavaScript官方文档(二)之默认的API字符串 ArcGIS API

node.js官方文档chm电子书的制作

制作软件:WebCHMSetup2.22.zip,http://www.onlinedown.net/soft/31553.htm 制作好的电子书:Node.js(v6.10.2).zip 参考链接:https://www.zhihu.com/question/37005587

bootbox.js官方文档

简介 Bootbox.js是一个小型的JavaScript库,基于Bootstrap模态框开发,用于创建可编程的对话框. 不像原生的alert等对话框,所有的Bootstrap模态框生成的都是非阻塞事件.所以 在使用confirm()对话框时,请记住这一点,因为它不是本地确认对话框的替代. 任何取决于用户选择的代码都必须放在回调函数中. alert alert是只有单个按钮的对话框,按ESC键或单击关闭按钮可关闭对话框. bootbox.alert("Your message here…&quo

比官方文档更易懂的Vue.js教程!包你学会!

欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由蔡述雄发表于云+社区专栏 蔡述雄,现腾讯用户体验设计部QQ空间高级UI工程师.智图图片优化系统首席工程师,曾参与<众妙之门>书籍的翻译工作.目前专注前端图片优化与新技术的探研. 2016年,乃至接下来整个2017年,如果你要问前端技术框架什么最火,那无疑就是前端三巨头:React.Angular.Vue.没错,什么jQuery,seaJs,gulp等都逐渐脱离了热点.面试的时候不吹上一点新技术,好像自己就不是搞前端的似的.当然,

GSAP 官方文档(结贴)

好久没写GSAP的教程的(其实我也不懂哈哈),国内也没什么人用,不对动画要求特别高的话,其实也没必要用GSAP,现在工作上没用到这个东西,也懒得写了,所以有问题的话去找一下greensock的官方文档吧 js版 :http://greensock.com/docs/#/HTML5/GSAP/ as版:http://greensock.com/asdocs/ 温馨提示:文档其实说得都很详细了,例子也全,但如果还是真的看不懂文档的话,建议去9ria社区搜一下TweenLite和TweenMax的相关

【cocos2d-js官方文档】十九、Cocos2d-JS单文件引擎使用指引

这篇指引主要介绍如何使用从在线下载工具下载下来的Cocos2d-JS的单文件引擎. 你有可能下载了下面三个版本中的一个: Cocos2d-JS Full Version: 完整版引擎包含Cocos2d-JS引擎的所有功能特性以及所有扩展,使用这个版本可以帮助你发掘Cocos2d-JS令人惊艳的创造力和可能性.你可以从官方文档首页中查看Cocos2d-JS所支持的特性列表. Cocos2d-JS Lite Version: 精简版本只包含Cocos2d-JS的核心特性,它的优势是稳定,轻量,简单易

[译]Polymer官方文档-布局元素

原文链接: Layout elements(注:有时需翻墙或换hosts)翻译日期: 2014年8月2日翻译人员: 铁锚 译注: 点击下载本教程的示例代码: Polymer布局元素Demo相关的代码文件在 layout 目录下. 0. 准备- Chrome浏览器模拟移动设备Chrome浏览器(要求最新版,如34以上版本)模拟移动设备的方法: 打开一个标签页,按 F12,(或者在页面空白区域点鼠标右键,审查元素),打开调试窗口. 然后在将光标移动到调试窗口中, 按 ESC键,或者点击右上角的 dr

iOS9官方文档

       iOS9已经发布一段时间了,我也在最近升级了Xcdoe 7.0正式版,升级后才发现又有了很多奇妙的变化,于是查看官方文档的一些解释,顺便做了一些翻译,和大家分享一下(转载请注明出处). iPad多任务增强 iOS9增强了对iPad用户的多任务处理如滑动(Slide Over),拆分视图(Split View)和画中画(Picture in Picture)的体验.该滑过功能允许用户选择一个次要的App并快速地与之交互.拆分视图功能让用户能够同时并排开启两个App.画中画功能(也称为

Oracle12cR1官方文档打开图片无法显示问题

当下载Oracle12cR1官方文档解压后,打开主页时出现有些图片无法显示,如下: 解决办法: 在E50529_01\dcommon\js\目录下,找到下面三个js文件 common.js  headfoot.js headfoot_prev.js 在三个文件里分别能找到下面的内容: if (document.getElementById("searchbody") === undefined || document.getElementById("searchbody&qu