ExtJS DOM元素操作经验分享
记得最早刚接触网页操作DOM元素的时候是做毕业设计的时候,用JQuery操作的。毕业工作后是从事C++方面的编程,两年后,又重新解决了网页编程,不过这次不是用JQuery了,用的是ExtJS。就我经验来看,程序员是一个需要不断学习的行业(这也是为什么周围的同事很多都有白头发的缘故吧)。
好了,今天这篇文章的主题是分享下我使用 ExtJS 操作 DOM 元素的一些经验。
设置元素点击处理函数的方法
查询多个元素操作
在实际项目中,由于需要更改一类元素的信息提示样式,如果根据 css 来查找的话,当需要消失操作时,就不能继续根据 css 来查找所有的元素了。这时,同事教会了我一种新的方法,如下:
元素的显示和隐藏
之前我一般用的方式
这种方式能够提供动画效果,但是这样的话,如果需要元素消失时:元素虽然消失了,但是同样还是会占用了元素的空间位置,不便布局。后来,同事发现可以采用这种方式,虽然没有了动画效果,但是不会占用元素的位置:
刚才发现文档中的说明:
Hide this element - Uses display mode to determine whether to use "display" or "visibility". See setVisible.
仔细阅读文档是程序员必须要学会做的!
好了,今天这篇文章的主题是分享下我使用 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.
仔细阅读文档是程序员必须要学会做的!
相关推荐
星星有所不知 2020-10-12
zuncle 2020-09-28
huaoa 2020-09-14
北京老苏 2020-08-17
luvhl 2020-08-17
Kakoola 2020-07-29
drdrsky 2020-07-29
书虫媛 2020-07-08
liaoxuewu 2020-07-08
SIMONDOMAIN 2020-07-08
爱读书的旅行者 2020-07-07
tianzyc 2020-07-04
Vue和React是数据驱动视图,如何有效控制DOM操作?能不能把计算,更多的转移为js计算?因为js执行速度很快。patch函数-->patch,对比tag,对比tag与key,对比children
Lophole 2020-07-04
Lophole 2020-06-28
liaoxuewu 2020-06-26
ApeLife技术 2020-06-26
北京老苏 2020-06-25
Lophole 2020-06-14