Code/Resource
Windows Develop
Linux-Unix program
Internet-Socket-Network
Web Server
Browser Client
Ftp Server
Ftp Client
Browser Plugins
Proxy Server
Email Server
Email Client
WEB Mail
Firewall-Security
Telnet Server
Telnet Client
ICQ-IM-Chat
Search Engine
Sniffer Package capture
Remote Control
xml-soap-webservice
P2P
WEB(ASP,PHP,...)
TCP/IP Stack
SNMP
Grid Computing
SilverLight
DNS
Cluster Service
Network Security
Communication-Mobile
Game Program
Editor
Multimedia program
Graph program
Compiler program
Compress-Decompress algrithms
Crypt_Decrypt algrithms
Mathimatics-Numerical algorithms
MultiLanguage
Disk/Storage
Java Develop
assembly language
Applications
Other systems
Database system
Embeded-SCM Develop
FlashMX/Flex
source in ebook
Delphi VCL
OS Develop
MiddleWare
MPI
MacOS develop
LabView
ELanguage
Software/Tools
E-Books
Artical/Document
ARIA.js
Package: ext-3.1.0.zip [view]
Upload User: dawnssy
Upload Date: 2022-08-06
Package Size: 9345k
Code Size: 3k
Category:
JavaScript
Development Platform:
JavaScript
- /*! * Ext JS Library 3.1.0 * Copyright(c) 2006-2009 Ext JS, LLC * licensing@extjs.com * http://www.extjs.com/license */ (function() {
- Ext.a11y.ARIA = Ext.apply(new Ext.util.Observable(), function() {
- return {
- setRole : function(el, role) {
- el = Ext.getDom(el);
- if(el) {
- el.setAttribute('role', role.toString());
- }
- },
- setProperty : function(el, key, value) {
- el = Ext.getDom(el);
- if(el) {
- el.setAttribute(key.toString(), value.toString());
- }
- }
- }
- }());
- var ARIA = Ext.a11y.ARIA;
- Ext.override(Ext.tree.TreeNode, {
- render : function(bulkRender){
- this.ui.render(bulkRender);
- if(!this.rendered){
- // make sure it is registered
- this.getOwnerTree().registerNode(this);
- this.rendered = true;
- this.fireEvent('noderender', this);
- if(this.expanded){
- this.expanded = false;
- this.expand(false, false);
- }
- }
- }
- });
- Ext.override(Ext.tree.TreePanel, {
- initARIA : function() {
- Ext.tree.TreePanel.superclass.initARIA.call(this);
- this.getSelectionModel().on('selectionchange', this.onNodeSelect, this);
- this.ariaTreeEl = this.body.down('.x-tree-root-ct');
- this.on('collapsenode', this.onNodeCollapse, this);
- this.on('expandnode', this.onNodeExpand, this);
- },
- // private
- registerNode : function(node){
- if(this.nodeHash[node.id] === undefined) {
- node.on('noderender', this.onNodeRender, this);
- }
- this.nodeHash[node.id] = node;
- },
- // private
- unregisterNode : function(node){
- node.un('noderender', this.onNodeRender, this);
- delete this.nodeHash[node.id];
- },
- onNodeRender : function(node) {
- var a = node.ui.anchor,
- level = this.rootVisible ? 1 : 0,
- pnode = node;
- if(node.isRoot) {
- ARIA.setRole(this.ariaTreeEl, 'tree');
- ARIA.setProperty(this.ariaTreeEl, 'aria-labelledby', Ext.id(node.ui.textNode));
- ARIA.setProperty(this.ariaTreeEl, 'aria-activedescendant', 'false');
- if(!this.rootVisible) {
- return;
- }
- }
- ARIA.setRole(node.ui.wrap, 'treeitem');
- ARIA.setProperty(node.ui.wrap, 'aria-labelledby', Ext.id(node.ui.textNode));
- ARIA.setProperty(node.ui.wrap, 'aria-expanded', 'false');
- ARIA.setProperty(node.ui.wrap, 'aria-selected', 'false');
- while (pnode.parentNode) {
- level++;
- pnode = pnode.parentNode;
- }
- ARIA.setProperty(node.ui.wrap, 'aria-level', level);
- if(!node.isLeaf()) {
- ARIA.setRole(node.ui.ctNode, 'group');
- ARIA.setProperty(node.ui.wrap, 'aria-expanded', node.isExpanded());
- }
- },
- onNodeSelect : function(sm, node) {
- ARIA.setProperty(this.ariaTreeEl, 'aria-activedescendant', Ext.id(node.ui.wrap));
- ARIA.setProperty(node.ui.wrap, 'aria-selected', 'true');
- },
- onNodeCollapse : function(node) {
- ARIA.setProperty(node.ui.wrap, 'aria-expanded', 'false');
- },
- onNodeExpand : function(node) {
- ARIA.setProperty(node.ui.wrap, 'aria-expanded', 'true');
- }
- });
- })();