zoukankan      html  css  js  c++  java
  • dojo 七 DOM dojo/dom

    官方教程:Dojo DOM Functions
    对dom的使用,需要引用包dojo/dom。
    1.获取节点,dom.byId
    byId中既可以传递一个字符串,也可以传递一个节点对象

    require(["dojo/dom", "dojo/domReady!"], function(dom) {
         
        function setText(node, text){
            node = dom.byId(node);//通过已有对象
            node.innerHTML = text;
        }
     
        var one = dom.byId("one");//通过字符串
        setText(one, "One has been set");
        setText("two", "Two has been set as well");
         
    });


    2.创建节点,domConstruct.create,创建一个新的节点
    domConstruct需要引用包dojo/dom-construct,包括4个参数。
    第一个:
    节点名,如"li""a"
    第二个:属性对象,可以设置需要创建节点的各个属性、样式、内容和值
    第三个:一个父节点或同级节点对象,可选
    第四个:一个插入点标志字符串,由此决定是将第三个参数做为父节点附加到其内部,或是做为同级节点插入,可选,默认为"last"表示附加到父节点最后,"first"表示附加到父节点最前,"before"表示插入到同级节点前,"after"表示插入到同级节点后

    require(["dojo/dom", "dojo/dom-construct", "dojo/domReady!"],
        function(dom, domConstruct) {
         
            var list = dom.byId("list"),
                three = dom.byId("three");
     
            domConstruct.create("li", {
                innerHTML: "Six"
            }, list);
     
            domConstruct.create("li", {
                innerHTML: "Seven",
                className: "seven",
                style: {
                    fontWeight: "bold"
                }
            }, list);
     
            domConstruct.create("li", {
                innerHTML: "Three and a half"
            }, three, "after");
         
    });


    3.放置节点,domConstruct.place,改变已存在的一个节点的位置
    domConstruct.place包括三个参数。
    第一个:目标节点,是一个id字符串或节点对象,即需要放置的节点
    第二个:关联节点,是一个id字符串或节点对象,即目标节点将附加到该父节点最前或最后,或者,插入到该同级节点前或后
    第三个:一个插入点标志字符串,由此决定是将第二个参数做为父节点附加到其内部,或是做为同级节点插入其前后,可选,默认为"last"表示附加到父节点最后,"first"表示附加到父节点最前,"before"表示插入到同级节点前,"after"表示插入到同级节点后

    require(["dojo/dom", "dojo/dom-construct", "dojo/on", "dojo/domReady!"],
        function(dom, domConstruct, on){
             
            function moveFirst(){
                var list = dom.byId("list"),
                    three = dom.byId("three");
     
                domConstruct.place(three, list, "first");
            }
     
            function moveBeforeTwo(){
                var two = dom.byId("two"),
                    three = dom.byId("three");
     
                domConstruct.place(three, two, "before");
            }
     
            function moveAfterFour(){
                var four = dom.byId("four"),
                    three = dom.byId("three");
     
                domConstruct.place(three, four, "after");
            }
     
            function moveLast(){
                var list = dom.byId("list"),
                    three = dom.byId("three");
     
                domConstruct.place(three, list);
            }        
    });

    4.毁灭节点,
    domConstruct.destroy,彻底删除一个已存在的节点及其子节点。
    如果仅需清空该节点下的子节点,而保留该节点则用domConstruct.empty。
    参数都是一个id字符串或节点对象。
    function destroyFirst(){
        var list = dom.byId("list"),
            items = list.getElementsByTagName("li");
             
        if(items.length){
            domConstruct.destroy(items[0]);//删除list下第一个li子节点
        }
    }
    function destroyAll(){
        domConstruct.empty("list");//清空list下所有子节点
    }
  • 相关阅读:
    MVC3+Spring.net+NHibernate+ExtJs的简单架构
    WCF初见之Salt+Hash加密
    演讲时经常用到的几个小工具介绍
    2asp.net mvc 4 in action
    Hadoop简介和实践分享
    PyMongo非关系型数据库mongodb入门
    网络资源定位(Url)的奥秘
    ApplicationPoolIdentity
    CustomBehavior 入门
    架构培训
  • 原文地址:https://www.cnblogs.com/tiandi/p/3415900.html
Copyright © 2011-2022 走看看