dom.byId

  1. require(["dojo/dom", "dojo/domReady!"], function(dom) {
  2. var one = dom.byId("one");
  3. function setText(node, text){
  4. node = dom.byId(node);
  5. node.innerHTML = text;
  6. }
  7. setText(one, "One has been set");
  8. setText("two", "Two has been set as well");
  9. });

domConstruct.create

  • parameters

    • node name,
    • properties of the node(json),
    • parent/sibling node,
    • optional position in ref to the parent/sibling node (last by default)
  • example

  1. require(["dojo/dom", "dojo/dom-construct", "dojo/domReady!"], function(dom, domConstruct) {
  2. var list = dom.byId("swlist");
  3. domConstruct.create("li", {
  4. innerHTML: "Seven",
  5. className: "seven",
  6. style: {
  7. fontWeight: "bold"
  8. }
  9. }, list);
  10. // or
  11. domConstruct.create("li", {
  12. innerHTML: "Three and a half"
  13. }, list, "after");
  14. });

domConstruct.place

  • parameters

    • node to place,
    • node as a reference,
    • optional position (last by default)
  • example

  1. require(["dojo/dom", "dojo/dom-construct", "dojo/on", "dojo/domReady!"], function(dom, domConstruct, on) {
  2. function moveFirst(){
  3. var list = dom.byId("list"),
  4. three = dom.byId("three");
  5. domConstruct.place(three, list, "first");
  6. // 把three place到list的第一个位置
  7. // "before", "after", "replace", "only", "first", 以及 "last"
  8. }
  9. on(dom.byId("moveFirst"), "click", moveFirst);
  10. });

domConstruct.destory domConstruct.empty

  • the same as jQuery
  • domConstruct.destroy which will destroy a node and all of its children
  • domConstruct.empty will only destroy the children of a given node
  • example
  1. require(["dojo/dom", "dojo/dom-construct", "dojo/on", "dojo/domReady!"], function(dom, domConstruct, on) {
  2. function destroyFirst(){
  3. var list = dom.byId("list"),
  4. items = list.getElementsByTagName("li");
  5. if(items.length){
  6. domConstruct.destroy(items[0]);
  7. }
  8. }
  9. on(dom.byId("destroyFirst"), "click", destroyFirst);
  10. });

query from dojo/query

  • query returns an array of nodes that match the selector; this array is actually a dojo/NodeList
  1. require(["dojo/query", "dojo/dom-class", "dojo/dom", "dojo/NodeList-dom", "dojo/domReady!"], function (query, domClass, dom) {
  2. // retrieve an array of nodes with the class name "odd"
  3. // from the first list using a selector
  4. var odds1 = query("#list .odd");
  5. // retrieve an array of nodes with the class name "odd"
  6. // from the first list using a DOM node
  7. // same as above
  8. var odds2 = query(".odd", dom.byId("list"));
  9. // retrieve an array of nodes with the ID "list"
  10. var list = query("#list")[0];
  11. query(".odd").forEach(function(node, index, nodelist){
  12. // for each node in the array returned by query,
  13. // execute the following code
  14. domClass.add(node, "red");
  15. });
  16. // `forEach` is a function from `NodeList'
  17. // `map`, `filter`, `every`, and `some` (also return a NodeList fro easy chaining)
  18. // `dojo/NodeList-dom` extends `NodeLists`
  19. query(".odd").addClass("active");
  20. query(".odd").removeClass("active").addClass("dimmed");
  21. query(".even").style("color", "white").addClass("italic");
  22. // funtions from NodeList-dom `style`, `toggleClass`, `replaceClass`, `place`, and `empty`, `addClass`, `removeClass`
  23. // a `on` function is provided in `NodeList`
  24. query(".hookUp").on("click", function(){
  25. alert("This button is hooked up (via NodeList on method) !");
  26. });
  27. });

dojo/dom dojo/domConstruct dojo/query的更多相关文章

  1. Dojo初探之4:dojo的event(鼠标/键盘)事件绑定操作(基于dojo1.11.2版本)

    前言: 上一章详解了dojo的dom/query操作,本章基于dom/query基础上进行事件绑定操作 dojo的事件 dojo的事件绑定操作分为鼠标和键盘两种进行详解 1.鼠标事件 我们沿用上一章中 ...

  2. Dojo初探之3:dojo的DOM操作、query操作和domConstruct元素位置操作(基于dojo1.11.2版本)

    前言: 前面两章讲了dojo的基本规范和配置,当然这个配置不是必须的,当你有这需求的时候就可以用到dojo的config配置. dojo的所有js都是符合AMD规范进行异步加载的:http://blo ...

  3. DOJO DOM 功能

    In this tutorial, you'll learn about how to use Dojo to manipulate the DOM in a simple, cross-browse ...

  4. dojo 七 DOM dojo/dom

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

  5. dojo/dom源码学习

    dojo/dom模块作为一个基础模块,最常用的就是byId方法.除此之外还有isDescendant和setSelectable方法. dom.byId(myId)方法:   各种前端类库都免不了与D ...

  6. dojo/dom源码

    dojo/dom源码学习   dojo/dom模块作为一个基础模块,最常用的就是byId方法.除此之外还有isDescendant和setSelectable方法. dom.byId(myId)方法: ...

  7. Dojo初探之5:dojo的request(请求)操作、请求过程事件绑定和隐藏数据data()操作(基于dojo1.11.2版本)

    前言: 上一章详细阐述了dojo的事件绑定操作,本章将讲解dojo的请求操作 注:dojo的请求操作与js和jquery完全不同! 1.dojo的请求 dojo通过request.get()/.put ...

  8. Configuring Dojo with dojoConfig - The Dojo Toolkit

    转载自Dojo官网 Configuring Dojo with dojoConfig The dojoConfig object (formerly djConfig) allows you to s ...

  9. dojo/Deferred类和dojo/promise类的使用

    参考博客:https://blog.csdn.net/blog_szhao/article/details/50220181        https://dojotoolkit.org/docume ...

随机推荐

  1. UVA 10127题目的解答

    #include <iostream>#include <cstdio>#include <cmath> int main(){ int num; while (s ...

  2. 微信公开课PRO版张小龙演讲全文

    今天,微信当家人张小龙通过微信官方账户发布了一则视频,视频中张小龙阐述了微信对于开放平台的一些理念和方向.张小龙用八点概括.以下是张小龙发言: 各位参加微信公开课的朋友们,大家好. 首先很遗憾这一次不 ...

  3. linux上配置java环境

    四.安装JDKsudo rpm -ivh jdk-7u75-linux-x64.rpmsudo rpm -qd jdk //查看jdk安装路径:/usr/java/jdk1.7.0_75/ 五.编辑环 ...

  4. android 检查网络连接状态实现步骤

    获取网络信息需要在AndroidManifest.xml文件中加入相应的权限. <uses-permission android:name="android.permission.AC ...

  5. Add Digits

    Given a non-negative integer num, repeatedly add all its digits until the result has only one digit. ...

  6. Real-Time SQL Monitoring

    Real-Time SQL Monitoring可以在sql运行的时候监控其性能. 缺省情况下,单个sql执行花费的CPU或I/O时间超过5秒或sql并行执行的时候,Real-Time SQL Mon ...

  7. PostgreSQL9.2.4内核源码结构介绍

    PostgreSQL的源代码可以随意获得,其开源协议也允许研究者任意修改,这里介绍一下PostgreSQL的源码结构以及部分实现机制.下载PostgreSQL源代码并减压后,其一级目录结构如下图: P ...

  8. map容器

    map容器一般用于对字符串进行编号,主要用于建图方面,例如把城市名按数字进行编号 #include"stdio.h" #include"string.h" #i ...

  9. Ejb: remote调用

    用的是wildfly 9.0.2 一:在myeclipse中新建wildfly 9.0.2的server(如何新建去网上搜) 二:修改wildfly server的argument(在run conf ...

  10. 常见http代码错误原因及处理

    常见的HTTP错误可以分为以下四大类.每一大类又细分为很多类小错误.当您打不开网站或者打开网站报错时首先检查您输入的网站是否有误,检查网络是否有问题或者虚拟主机的DNS是否可以解析.确定没有问题时再看 ...