问题
YUI2's Dom.get accepts both a DOM element or an id string as a parameter. In YUI3, Y.one is the replacement for Dom.get but it only accepts CSS selectors, not DOM elements. Is there a simple way, using YUI3, to normalise a JavaScript object to a DOM element?
回答1:
To support the same signature as YAHOO.util.Dom.get
you could do something like this:
var getNode = function(el) {
return Y.one('#' + el) || new Y.Node(el);
};
Here's an example of the function above in use.
回答2:
According to the API docs for Y.one it does accept a DOM element.
node a node or Selector
I think you can also pass a YUI 3 Node to it too. The only thing it doesn't do that DOM.get did is accept an id that isn't a CSS selector (e.g. 'foo' instead of '#foo').
来源:https://stackoverflow.com/questions/4892051/how-can-i-normalise-a-javascript-object-to-a-dom-element-with-yui3