zoukankan      html  css  js  c++  java
  • Ext JS学习第十四天 Ext基础之 Ext.DomHelper

     此文用来记录学习笔记

     
    •我们已经学过了Element这个类,无疑是非常强大的,里面提供了丰富的方法供我们使用,但是Ext为了更加的方便我们去操作DOM元素,特提供了DomHelper这个辅助的工具类。下面我们就一起学习下DomHelper
    •首先从API来看,这个类暴露出的public方法并不是特别多。仅仅13个方法而已。如果想生成dom节点,在这里不建议使用原生的方法去生成dom节点,原因是代码量比较大的时候性能比较低、其二是自己组装HTML字符串比较麻烦。在Ext里,DomHelper对象类似一个元素生成器,用于解决此类问题。一般的javascript框架底层都会有生成html代码的类似功能函数。
    •DomHelper常用方法:
    –createHtml或markup方法
    –createDom方法
    –append方法
    –insertHTML方法
    –overwrite方法
    –createTemplate方法
    –applyStyles方法
     
    举好多栗子
    Ext.onReady(function () {
    
        //准备工作
        Ext.create('Ext.panel.Panel', {
            title: 'DomHelper-元素生成器的使用',
             '90%',
            height: 400,
            renderTo: Ext.getBody(),
            html: '<div id=d1>我是d1</div>'
        });
    
    
        //DomHelper
        //1: createHtml或markup方法
        //配置项说明:
        //tag 元素的名称  
        //children/cn表示子元素 
        //cls表示样式  
        //html:文本内容
            var html = Ext.DomHelper.createHtml({
                tag:'ol' ,
                cn:[
                    {tag:'li',html:'item1'},
                    {tag:'li',html:'item2'}
                ]
            });
            console.info(html);
    
            var html = Ext.DomHelper.createHtml({
                tag:'div' , 
                children:[
                    {tag:'a' ,html:'bjsxt网站' , href:'www.bjsxt.cn'},
                    {tag:'input' , value:'点击' , type:'button' }
                ]
            });
            console.info(html);
    
        //2: createDom方法 (这个方法是生成原生的dom节点,不推荐使用)
            var dom = Ext.DomHelper.createDom({
                tag:'div' ,
                html:'我是div'
            });
        console.info(dom);
        alert(dom.nodeName);
    
        //3: append方法
            Ext.DomHelper.append('d1',{
                tag:'ul' , 
                cn:[{tag:'li',html:'1111'},{tag:'li',html:'2222'}]
            });
            Ext.DomHelper.append('d1','<span>我是span内容</span>');
    
        //4:insertHtml方法 //这个方法就是为了操作原生的node节点的
        //参数说明:String where, HTMLElement/TextNode el, String html
        Ext.DomHelper.insertHtml('beforeBegin',Ext.getDom('d1'),'<h1>我是标题!!</h1>')
    
        //5:overwrite方法
        Ext.DomHelper.overwrite('d1',{tag:'span',html:'我是覆盖的span'});
        Ext.DomHelper.overwrite('d1','aaaaa');
    
        //6:createTemplate方法
            var tp = Ext.DomHelper.createTemplate('<h1>{text}</h1><h2>{text2}</h2>'); //return Ext.Template
            tp.overwrite('d1',{text:'我是被替换的内容!!',text2:'我也是替换的内容!!'});
    
        //7:applyStyles方法    
            Ext.DomHelper.applyStyles('d1',{
                '100px',
                height:'100px',
                backgroundColor:'green'
            });
    
    
    
    
    });

     给各位推荐个文章网www.fishcmonkey.com,学习之余提高文学修养;

  • 相关阅读:
    《Programming in Lua 3》读书笔记(十)
    《Programming in Lua 3》读书笔记(九)
    《Programming in Lua 3》读书笔记(八)
    [原]NYOJ-括号匹配-2(java)
    [原]NYOJ-字符串替换-113
    [原]NYOJ-小光棍数-458
    [原]NYOJ-公约数和公倍数 -40
    [原]NYOJ-开灯问题-77
    [原]NYOJ-数的位数-69
    [原]NYOJ-大数阶乘-28
  • 原文地址:https://www.cnblogs.com/lisr/p/3943354.html
Copyright © 2011-2022 走看看