ExtJS DOM元素操作经验分享


Posted in Javascript onAugust 28, 2013

记得最早刚接触网页操作DOM元素的时候是做毕业设计的时候,用JQuery操作的。毕业工作后是从事C++方面的编程,两年后,又重新解决了网页编程,不过这次不是用JQuery了,用的是ExtJS。就我经验来看,程序员是一个需要不断学习的行业(这也是为什么周围的同事很多都有白头发的缘故吧)。

好了,今天这篇文章的主题是分享下我使用 ExtJS 操作 DOM 元素的一些经验。
设置元素点击处理函数的方法

var elem = Ext.get('start'); elem.on('click', function(e, t) { 
alert(t.id); 
});

查询多个元素操作
var body = Ext.query('body')[0]; 
body.className = "myStyle";

在实际项目中,由于需要更改一类元素的信息提示样式,如果根据 css 来查找的话,当需要消失操作时,就不能继续根据 css 来查找所有的元素了。这时,同事教会了我一种新的方法,如下:
<span style='display:none;' group='message_group' class='error'></span> 
<span style='display:none;' group='message_group' class='error'></span> // 这样多个同样属于 group 下的元素,可以通过此种方式获取: 
var elemMessageArray = Ext.select("span[group='message_group']"); 
var newCssObj = {}; 
if (isInfo) { 
newCssObj["class"] = "info"; 
} else { 
newCssObj["class"] = "error"; 
} 
// 然后对每个元素重新设置css样式就行了 
elemMessageArray.each( function(el) { 
el.set(newCssObj); 
el.update(text); 
el.show("display"); 
});

元素的显示和隐藏

之前我一般用的方式

Uncompleted = Ext.get('uncompleted'); 
elemUncompleted.setDisplayed(true);

这种方式能够提供动画效果,但是这样的话,如果需要元素消失时:元素虽然消失了,但是同样还是会占用了元素的空间位置,不便布局。后来,同事发现可以采用这种方式,虽然没有了动画效果,但是不会占用元素的位置:
el.show("display"); 
el.hide("display");

刚才发现文档中的说明:

Hide this element - Uses display mode to determine whether to use "display" or "visibility". See setVisible.

仔细阅读文档是程序员必须要学会做的!

Javascript 相关文章推荐
40款非常有用的 jQuery 插件推荐(系列一)
Dec 21 Javascript
Javascript处理DOM元素事件实现代码
May 23 Javascript
Extjs 继承Ext.data.Store不起作用原因分析及解决
Apr 15 Javascript
原创jQuery弹出层插件分享
Apr 02 Javascript
jQuery实现滑动页面固定顶部显示(可根据显示位置消失与替换)
Oct 28 Javascript
实现隔行换色效果的两种方式【实用】
Nov 27 Javascript
js实现网页同时进行多个倒计时功能
Feb 25 Javascript
vue axios post发送复杂对象问题
Jun 04 Javascript
js 判断当前时间是否处于某个一个时间段内
Sep 19 Javascript
怎么理解wx.navigateTo的events参数使用详情
May 18 Javascript
Vue filter 过滤器、以及在table中的使用介绍
Sep 07 Javascript
基于Ionic3实现选项卡切换并重新加载echarts
Sep 24 Javascript
地址栏传递中文参数乱码在js里用escape转码
Aug 28 #Javascript
在JavaScript中实现类的方式探讨
Aug 28 #Javascript
实用的Jquery选项卡TAB示例代码
Aug 28 #Javascript
jQuery实现图片信息的浮动显示实例代码
Aug 28 #Javascript
JQuery筛选器全系列介绍
Aug 27 #Javascript
HTML Color Picker(js拾色器效果)
Aug 27 #Javascript
Js中的onblur和onfocus事件应用介绍
Aug 27 #Javascript
You might like
Google Voice 短信发送接口PHP开源版(2010.5更新)
2010/07/22 PHP
javascript 年月日联动实现核心代码
2009/12/21 Javascript
js操作二级联动实现代码
2010/07/27 Javascript
在表单提交前进行验证的几种方式整理
2013/07/31 Javascript
ExtJs中gridpanel分组后组名排序实例代码
2013/12/02 Javascript
jquery获取html元素的绝对位置和相对位置的方法
2014/06/20 Javascript
jQuery实现的导航条切换可显示隐藏
2014/10/22 Javascript
jquery插件bxslider用法实例分析
2015/04/16 Javascript
AngularJs自定义服务之实现签名和加密
2016/08/02 Javascript
Vue.js一个文件对应一个组件实践
2016/10/27 Javascript
微信小程序侧边栏滑动特效(左右滑动)
2017/01/23 Javascript
vue.js 使用v-if v-else发现没有执行解决办法
2017/05/15 Javascript
完美解决iview 的select下拉框选项错位的问题
2018/03/02 Javascript
详解Angular操作cookies方法
2018/06/01 Javascript
微信小程序传值以及获取值方法的详解
2019/04/29 Javascript
JS几个常用的函数和对象定义与用法示例
2020/01/15 Javascript
Python的lambda匿名函数的简单介绍
2013/04/25 Python
python中xrange用法分析
2015/04/15 Python
python使用代理ip访问网站的实例
2018/05/07 Python
pytorch: tensor类型的构建与相互转换实例
2018/07/26 Python
对python 判断数字是否小于0的方法详解
2019/01/26 Python
关于python字符串方法分类详解
2019/08/20 Python
django框架中间件原理与用法详解
2019/12/10 Python
Python文件操作模拟用户登陆代码实例
2020/06/09 Python
python不同系统中打开方法
2020/06/23 Python
枚举和一组预处理的#define有什么不同
2016/09/21 面试题
Java如何支持I18N?
2016/10/31 面试题
数学教学随笔感言
2014/02/17 职场文书
《凡卡》教学反思
2014/04/09 职场文书
教育专业毕业生推荐信
2014/07/10 职场文书
2014党委书记四风对照检查材料思想汇报
2014/09/21 职场文书
市场调研项目授权委托书范本
2014/10/04 职场文书
手机被没收的检讨书
2014/10/04 职场文书
2014年技术员工作总结
2014/11/18 职场文书
导游词之河姆渡遗址博物馆
2019/10/10 职场文书
Rhit高效可视化Nginx日志查看工具
2021/11/01 Servers