From a6900c8a0de38cbd4a492e750f26bfe0bacdfb94 Mon Sep 17 00:00:00 2001 From: Matt Sweeney Date: Mon, 22 Nov 2010 12:18:55 -0800 Subject: [PATCH] implements YAHOO.util.Dom.getElementsBy [fix 2528677] --- build/compat/compat-debug.js | 6 ++---- build/compat/compat-min.js | 2 +- build/compat/compat.js | 6 ++---- src/compat/js/dom-compat.js | 6 ++---- 4 files changed, 7 insertions(+), 13 deletions(-) diff --git a/build/compat/compat-debug.js b/build/compat/compat-debug.js index 1d2d8833aba..a47f86416e7 100644 --- a/build/compat/compat-debug.js +++ b/build/compat/compat-debug.js @@ -724,10 +724,8 @@ var Dom = { tag = tag || '*'; root = (root) ? Dom.get(root) : null || document; - var nodes = []; - if (root) { - nodes = YUI.DOM.byTag(tag, root, method); - } + + var nodes = Y.Selector.query(tag, root); return nodes; }, diff --git a/build/compat/compat-min.js b/build/compat/compat-min.js index 082190a7dcd..8777a79a71b 100644 --- a/build/compat/compat-min.js +++ b/build/compat/compat-min.js @@ -1,2 +1,2 @@ YUI.add("compat",function(d){var u="~yui|2|compat~",n,g;if(window.YAHOO!=YUI){n=(window.YAHOO)?YUI.merge(window.YAHOO):null;window.YAHOO=YUI;if(n){d.mix(d,n);}}d.namespace("util","widget","example");d.env=(d.env)?d.mix(d.env,d.Env):d.Env;d.lang=(d.lang)?d.mix(d.lang,d.Lang):d.Lang;d.env.ua=d.UA;d.mix(d.env,{modules:[],listeners:[],getVersion:function(i){return this.Env.modules[i]||null;}});g=d.lang;d.mix(g,{augmentObject:function(x,w){var i=arguments,y=(i.length>2)?d.Array(i,2,true):null,o=(y),l=[x,w,o];if(y&&y[0]!==true){l.push(y);}return d.mix.apply(d,l);},augmentProto:function(x,w){var i=arguments,y=(i.length>2)?d.Array(i,2,true):null,o=(y),l=[x,w,o];return d.augment.apply(d,l);},extend:d.extend,merge:d.merge},true);g.augment=g.augmentProto;g.hasOwnProperty=function(l,i){return(l.hasOwnProperty(i));};d.augmentProto=g.augmentProto;d.mix(d,{register:function(l,y,x){var C=d.Env.modules;if(!C[l]){C[l]={versions:[],builds:[]};}var o=C[l],B=x.version,A=x.build,z=d.Env.listeners;o.name=l;o.version=B;o.build=A;o.versions.push(B);o.builds.push(A);o.mainClass=y;for(var w=0;w *",i,true);},get:function(w){if(w){if(w.nodeType||w.item){return w;}if(typeof w==="string"){return document.getElementById(w);}if("length" in w){var x=[];for(var o=0,l=w.length;o=this.left&&i.right<=this.right&&i.top>=this.top&&i.bottom<=this.bottom);};YAHOO.util.Region.prototype.getArea=function(){return((this.bottom-this.top)*(this.right-this.left));};YAHOO.util.Region.prototype.intersect=function(y){var w=Math.max(this.top,y.top);var x=Math.min(this.right,y.right);var i=Math.min(this.bottom,y.bottom);var o=Math.max(this.left,y.left);if(i>=w&&x>=o){return new YAHOO.util.Region(w,x,i,o);}else{return null;}};YAHOO.util.Region.prototype.union=function(y){var w=Math.min(this.top,y.top);var x=Math.max(this.right,y.right);var i=Math.max(this.bottom,y.bottom);var o=Math.min(this.left,y.left);return new YAHOO.util.Region(w,x,i,o);};YAHOO.util.Region.prototype.toString=function(){return("Region {"+"top: "+this.top+", right: "+this.right+", bottom: "+this.bottom+", left: "+this.left+"}");};YAHOO.util.Region.getRegion=function(i){return YUI.DOM.region(i);};YAHOO.util.Point=function(i,l){if(YAHOO.lang.isArray(i)){l=i[1];i=i[0];}this.x=this.right=this.left=this[0]=i;this.y=this.top=this.bottom=this[1]=l;};YAHOO.util.Point.prototype=new YAHOO.util.Region();YAHOO.register("dom",YAHOO.util.Dom,{version:"@VERSION@",build:"@BUILD@"});},"@VERSION@",{requires:["dom","dom-style-ie","event-base","dump","substitute"]});YUI._setup();YUI.use("compat"); \ No newline at end of file +l=(l)?a.get(l):d.config.doc;var o=[];if(l){o=d.Selector.query(i+"."+w,l);}return o;},getElementsBy:function(w,i,l){i=i||"*";l=(l)?a.get(l):null||document;var o=d.Selector.query(i,l);return o;},getViewportWidth:YUI.DOM.winWidth,getViewportHeight:YUI.DOM.winHeight,getDocumentWidth:YUI.DOM.docWidth,getDocumentHeight:YUI.DOM.docHeight,getDocumentScrollTop:YUI.DOM.docScrollY,getDocumentScrollLeft:YUI.DOM.docScrollX,_guid:function(i,l){l=l||"yui-gen";a._id_counter=a._id_counter||0;if(i&&i.id){return i.id;}var o=l+a._id_counter++;if(i){i.id=o;}return o;},_region:function(i){if((i.parentNode===null||i.offsetParent===null||YUI.DOM.getStyle(i,"display")=="none")&&i!=i.ownerDocument.body){return false;}return YUI.DOM.region(i);},_ancestorByClass:function(i,l){return YUI.DOM.ancestor(i,function(o){return YUI.DOM.hasClass(o,l);});},_ancestorByTag:function(l,i){i=i.toUpperCase();return YUI.DOM.ancestor(l,function(o){return o.tagName.toUpperCase()===i;});}};var h=function(l,i){a[i]=function(){var o=p.call(arguments);o[0]=a.get(o[0]);return l.apply(a,o);};};var k={getAncestorBy:YUI.DOM.ancestor,getAncestorByClassName:a._ancestorByClass,getAncestorByTagName:a._ancestorByTag,getPreviousSiblingBy:YUI.DOM.previous,getPreviousSibling:YUI.DOM.previous,getNextSiblingBy:YUI.DOM.next,getNextSibling:YUI.DOM.next,getFirstChildBy:a._firstChild,getFirstChild:a._firstChild,getLastChildBy:YUI.DOM.lastChild,getLastChild:YUI.DOM.lastChild,getChildrenBy:YUI.DOM.children,getChildren:YUI.DOM.children,insertBefore:function(l,i){YUI.DOM.insertBefore(a.get(l),a.get(i));},insertAfter:function(l,i){YUI.DOM.insertAfter(a.get(l),a.get(i));}};d.each(k,h);var m={getStyle:YUI.DOM.getStyle,setStyle:YUI.DOM.setStyle,getXY:YUI.DOM.getXY,setXY:YUI.DOM.setXY,getX:YUI.DOM.getX,getY:YUI.DOM.getY,setX:YUI.DOM.setX,setY:YUI.DOM.setY,getRegion:a._region,hasClass:YUI.DOM.hasClass,addClass:a._addClass,removeClass:a._removeClass,replaceClass:a._replaceClass,generateId:a._guid};d.each(m,function(i,l){a[l]=function(w){var o=p.call(arguments,1);return a.batch(w,i,null,null,o);};});d.util.Dom=a;YAHOO.util.Region=function(w,x,i,o){this.top=w;this[1]=w;this.right=x;this.bottom=i;this.left=o;this[0]=o;};YAHOO.util.Region.prototype.contains=function(i){return(i.left>=this.left&&i.right<=this.right&&i.top>=this.top&&i.bottom<=this.bottom);};YAHOO.util.Region.prototype.getArea=function(){return((this.bottom-this.top)*(this.right-this.left));};YAHOO.util.Region.prototype.intersect=function(y){var w=Math.max(this.top,y.top);var x=Math.min(this.right,y.right);var i=Math.min(this.bottom,y.bottom);var o=Math.max(this.left,y.left);if(i>=w&&x>=o){return new YAHOO.util.Region(w,x,i,o);}else{return null;}};YAHOO.util.Region.prototype.union=function(y){var w=Math.min(this.top,y.top);var x=Math.max(this.right,y.right);var i=Math.max(this.bottom,y.bottom);var o=Math.min(this.left,y.left);return new YAHOO.util.Region(w,x,i,o);};YAHOO.util.Region.prototype.toString=function(){return("Region {"+"top: "+this.top+", right: "+this.right+", bottom: "+this.bottom+", left: "+this.left+"}");};YAHOO.util.Region.getRegion=function(i){return YUI.DOM.region(i);};YAHOO.util.Point=function(i,l){if(YAHOO.lang.isArray(i)){l=i[1];i=i[0];}this.x=this.right=this.left=this[0]=i;this.y=this.top=this.bottom=this[1]=l;};YAHOO.util.Point.prototype=new YAHOO.util.Region();YAHOO.register("dom",YAHOO.util.Dom,{version:"@VERSION@",build:"@BUILD@"});},"@VERSION@",{requires:["dom","dom-style-ie","event-base","dump","substitute"]});YUI._setup();YUI.use("compat"); \ No newline at end of file diff --git a/build/compat/compat.js b/build/compat/compat.js index 096098c1088..6da76d21aeb 100644 --- a/build/compat/compat.js +++ b/build/compat/compat.js @@ -721,10 +721,8 @@ var Dom = { tag = tag || '*'; root = (root) ? Dom.get(root) : null || document; - var nodes = []; - if (root) { - nodes = YUI.DOM.byTag(tag, root, method); - } + + var nodes = Y.Selector.query(tag, root); return nodes; }, diff --git a/src/compat/js/dom-compat.js b/src/compat/js/dom-compat.js index 937303b6b89..d162df99635 100644 --- a/src/compat/js/dom-compat.js +++ b/src/compat/js/dom-compat.js @@ -143,10 +143,8 @@ var Dom = { tag = tag || '*'; root = (root) ? Dom.get(root) : null || document; - var nodes = []; - if (root) { - nodes = YUI.DOM.byTag(tag, root, method); - } + + var nodes = Y.Selector.query(tag, root); return nodes; },