- 浏览: 321461 次
- 性别:
最新评论
-
i042416:
分析在哪?
angular分析 -
何盆盆:
你好,请问您这是Extjs3还是Extjs4
ExtJs源码分析与学习—ExtJs事件机制(一) -
124753561:
引用引用引用引用引用[u][u][u][u][i][i][i] ...
Subvision SVN 服务端与客户端的安装 -
谷超:
请问一下例子中itext是什么版本的?
利用iText生成word文档例子参考 -
geosmart:
正好要用到执行字符串中方法,学习了
java中利用反射机制实现调用给定为字符串的方法名
文章列表
定义级联样式时,每一层之间有空格和没有空格是有区别的,先看下面的代码
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title ...
ExtJs源码分析与学习—遮罩层
- 博客分类:
- extjs
类Ext.LoadMask
这一节分析Ext中遮罩效果的实现,Ext中专门为遮罩效果提供了类Ext.LoadMask,该类封装了Ext.Element中实现遮罩的方法mask和unmask(这两个方法的定义在源文件Element.fx-more.js中)。该类用于在加载数据时为元素做 ...
如果想让html页面中任意元素自动局部刷新,而不是整个页面刷新,可以用Ext提供的Ext.UpdateManager来完成其功能,该类还可以实现在线人数统计等功能。下面先看例子
//html内容
<div id="refreshContent"></div>
//js内容
var el = Ext.get('refreshContent'); //取得id属性值为'refreshContent'的元素引用
var updater = el.getUpdateManager(); //创建元素的UpdateManag ...
一、函数中调用函数的实现
/**
* 以下为函数中调用函数的实现
* 具体功能实现:通过传值来查找给定数据中是否存在,并返回存在值的数组
* 其中data可以是动态生成的数据
* fn为返回的传参函数,执行fn('data1')后,返回函数,并且该函数中已设置了value值
* callFn 为执行函数,代码中会遍历执行传入函数
*/
var data = ['data1', 'data2', 'data3', 'data4'];
var fn = function(value) {
if (value === null || value === u ...
由于js是采用引用传值的,故修改任何一个对象,其关联的对象也会被改变,但很多时候我们只想得到一个对象的拷贝,而非引用。下面提供了一种实现。不过除非程序中需要,否则要避免操作对象的拷贝,因为这样会影响性能,造成太多的递归调用(too much recursive)。
function clone(o) {
if (!o) {
return o;
} else {
var c;
if (Object.prototype.toString.apply(o) === '[object Array]') {
c = [];
for (var i ...
1、静态方法的定义
var BaseClass = function() {}; // var BaseClass=new Function();
BaseClass.f1 = function(){//定义静态方法
alert(' This is a static method ');
}
BaseClass.f1();//This is a static method
var instance1 = new BaseClass();
instance1.f1();//instance1.f1 is not a function
由以上代码分析可知,静态方法不 ...
批量操作元素Ext.CompositeElementLite
该类提供了对一批元素进行相同操作的实现,他是建立在Ext.Element基础上,类中有一个集合,用来保存一批元素。该类的操作依赖于Ext.select,即Ext.Element.select函数来查询元素。
先看构造器方法
Ext.CompositeElementLite = function(els, root){
this.elements = [];
this.add(els, root);
this.el = new Ext.Element.Flyweight ...
元素的查询Ext.DomQuery
该类结合css选择器可以提供高效的查询。首先说一下DOM中对文档元素的查询,主要有以下方法
document.getElementById(id)
element.getElementsByTagName(tagName)
DOM对应的6个属性来获取其父、子及兄弟节点的引用
parentNode 指向其父节点的引用
previousSibling 指向前一个兄弟节点的引用
nextSibling 指向后一个兄弟节点的引用
firstChild 指向其第一个节点的 ...
元素的操作Ext.DomHelper
该类中的函数主要来简化创建DOM元素操作,采用单例模式实现。主要提供了createHtml和createDom函数。createHtml函数根据配置来创建HTML标签,最终通过innerHTML插入到文档中,二createDom函数根据配置 ...
Ext.Element扩展
通过Ext.Element.addMethods方法,Ext.Element扩展了许多对dom操作的方法,主要分为DOM坐标(Element.position.js),DOM滚动条(Element.scroll.js),DOM样式(Element.style.js),DOM动画(Element.fx.js),DOM元素的插入(Element.insertion.js),DOM遍历(Element.traversal.js)。
以下简单的罗列一些主要的方法及功能,这些方法的实现都很简单,可以直接查看源码来理解。
1、坐标
getOffse ...
元素操作核心类Ext.Element
类Ext.Element对DOM元素的进行了封装,并对DOM加入了简单的操作,实现了各浏览器的兼容;该类的实例可以更容易的对DOM elements进行操作;类中的事件,即封装了浏览器的事件,也可以访问底 ...
从这一节开始分析ExtJs对元素(Element)的封装与扩展,首先看Ext.lib.Dom
类Ext.lib.Dom
该类源代码对应的文件为ext-base-dom.js。Ext.lib.Dom主要实现了对document中元素部分方法的兼容性实现。在前面事件(Ext.Event ...
Ext提供了一个很有用的工具类Ext.util.TextMetrics,利用该类可以很方便的为一段文字提供一个精确象素级的测量,以便可以得到某段文字的高度和宽度。该类的实现采用了单例模式,即当调用该类时,该类内部属性shared已实 ...
最后把涉及到Ext事件的相关类图贴到这里
最近一直忙着做产品,所以好久没有写文章了,下面接着把ExtJs事件机制最后一点内容写完。主要是介绍Ext提供的三个辅助实现事件类——快捷键、导航键和鼠标按键事件。
快捷键 Ext.KeyMap
该功能的实现被封装在类Ext.KeyMap中
Ext.KeyMap = function(el, config, eventName){
this.el = Ext.get(el);
this.eventName = eventName || "keydown";
this.bindings = [];
...