### Dojo常用方法总结 Dojo是一个开源的JavaScript框架,用于构建高性能的富客户端Web应用程序。它提供了一系列功能强大的工具和API,可以帮助开发者更轻松地处理DOM操作、AJAX调用、用户界面组件构建等任务。本文将详细介绍Dojo中几个常用的方法,包括元素的获取、事件的监听、数组的遍历等。 #### 1. dojoready `dojoready` 是Dojo中的一个非常重要的函数,它的作用类似于jQuery中的`$(document).ready()`,用于确保文档加载完成后再执行某些操作。这样可以避免由于页面尚未加载完毕而导致的DOM元素未找到等问题。 ```javascript dojo.ready(function(){ // 在这里放置你的代码,这部分代码将在页面DOM元素加载完成后执行 }); ``` #### 2. 元素的获取 - **`dojo.query`**:这是一个类似于jQuery的选择器方法,可以根据CSS选择器来获取页面中的元素。 ```javascript // 获取所有name属性以"aa"开头的元素 dojo.query("[name^=aa]"); // 获取id为"aa"的元素 dojo.query("#aa"); // 获取class为"aa"的所有元素 dojo.query(".aa"); ``` - **`dojo.byId`**:根据ID直接获取页面中的单个元素。 ```javascript var element = dojo.byId("aa"); // 获取id为"aa"的元素 ``` - **`dojo.attr`**:用于获取或设置DOM元素的属性值。 ```javascript // 获取指定元素的"name"属性值 var strs = dojo.attr(item, "name"); // 设置id为"aa"的元素的"required"属性为true dojo.attr(dojo.byId("aa"), {"required": true}); // 设置id为"aa"的元素的"readonly"属性为true dojo.attr(dojo.byId("aa"), {"readonly": true}); ``` #### 3. 数组的遍历 - **`dojo.forEach`**:这个方法可以遍历一个数组或一组DOM节点,并对每个元素执行特定的操作。 ```javascript dojo.forEach(dojo.query("[name^=aa]"), function(obj, i, list) { // 对name以"aa"开头的每一个元素执行操作 console.log(obj); // 输出当前元素 }); ``` #### 4. 事件的监听与触发 - **`dojo.connect`**:用于连接一个事件处理器到指定的DOM事件上。 ```javascript // 当id为"aa"的元素发生"onchange"事件时执行回调函数 dojo.connect(dojo.byId("aa"), "onchange", function() { console.log("Value changed"); }); // 触发id为"aa"的元素失去焦点 dojo.byId("aa").blur(); // 触发id为"aa"的元素获得焦点 dojo.byId("aa").focus(); ``` #### 5. 获取和设置值 - **`value` 属性**:通过`value`属性可以直接获取或设置DOM元素的值。 ```javascript // 获取name以"aa"开头的第一个元素的值 var value = dojo.query("[name^=aa]")[0].value; // 获取id为"aa"的元素的值 var value = dojo.byId("aa").value; ``` 以上是Dojo框架中一些常见的方法介绍及其用法示例。通过这些方法,开发者可以更高效地进行DOM操作和事件处理,从而提高Web应用的性能和用户体验。希望这些总结能够帮助你在实际项目中更好地利用Dojo框架。































dojo.ready(function(){
//加载js时就执行
});
dojo.require("dojox.mobile"); dojo引 js文件
2.dojo选择器
dojo.query("[name^=aa]") 选择name以aa开头的节点
dojo.query("#aa") 选择id为aa的元素
dojo.query(".aa") 选择class为aa的元素
dojo.byId("aa") 选择id为aa的元素
var strs=dojo.attr(item,"name"); //选择节点的name属性
dojo.attr(dojo.byId("aa"),{"required":true}); 设置id为aa的节点的required属性为true
dojo.attr(dojo.byId("aa"), {"readonly":true}); 设置id为aa的节点的readonly属性为true
3.dojo循环
dojo.forEach(dojo.query("[name^=aa]"), function(obj, i, list){
循环遍历name以aa开头的节点
});
4.dojo的事件
dojo.connect(dojo.byId("aa"), "onchange", function() {
id为aa的节点值有变化且失去焦点时触发的事件(还有onfocus onblur等)
});
dojo.byId("aa").blur(); 设置id为aa的节点失去焦点
dojo.byId("aa").focus(); 设置id为aa的节点得到焦点
5.dojo取值
dojo.query("[name^=aa]")[0].value 取得name以aa开头的节点值【注意:dojo.query选择的结果都是数组】


- 粉丝: 0
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- Chinese safety prompts for evaluating and improving the safety of LLMs. 中文安全prompts,用于评估和提升大模型的安全性
- WorldBlueSky-JavaDocS-22484-1755764829860.zip
- 《解构大语言模型:从线性回归到通用人工智能》配套代码
- SQL Server管理入门与实践
- LangChat: Java LLMs/AI Project, Supports Multi AI Providers( Gitee AI/ 智谱清言 / 阿里通义 / 百度千帆 / DeepSeek
- 大模型具身智能比赛-机器人控制端
- 计算机系统基础课程实验项目之数据实验室-位操作与整数浮点数表示深度解析-用于帮助学生理解计算机底层数据表示和位运算原理-通过修改bitsc文件完成指定位操作函数-使用dlc编译器.zip
- PHP, Apache, MySQL Web Development入门指南
- 《解构大语言模型:从线性回归到通用人工智能》配套代码
- 《解析大语言模型:从线性回归到通用人工智能》配套代码 《剖析大语言模型:从线性回归到通用人工智能》配套代码 《拆解大语言模型:从线性回归到通用人工智能》配套代码
- 大数据如何改变我们的生活与工作
- 个人关于大模型的记忆宝藏
- 个人关于大模型的记忆宝藏
- 数据库基础与应用:从理论到实践
- 基于大语言模型(LLM)和多智能体(Multi-Agent),探究AI写小说能力的边界
- 网络安全分析与监控平台安全防护关键技术.docx


