Al tratar de hacer que mi Javascript sea discreto, estoy usando onLoad
s para agregar funcionalidad a <input>
sy cosas por el estilo. Con Dojo, esto se ve algo como:¿Hay un equivalente en JavaScript de Ruby's andand?
var coolInput = dojo.byId('cool_input');
if(coolInput) {
dojo.addOnLoad(function() {
coolInput.onkeyup = function() { ... };
});
}
O, lo que es equivalente, aproximadamente:
dojo.addOnLoad(function() {
dojo.forEach(dojo.query('#cool_input'), function(elt) {
elt.onkeyup = function() { ... };
});
});
nadie ha escrito una implementación de Ruby andand para que yo pudiera hacer lo siguiente?
dojo.addOnLoad(function() {
// the input's onkeyup is set iff the input exists
dojo.byId('cool_input').andand().onkeyup = function() { ... };
});
o
dojo.byId('cool_input').andand(function(elt) {
// this function gets called with elt = the input iff it exists
dojo.addOnLoad(function() {
elt.onkeyup = function() { ... };
});
});
O use [CoffeeScript] (http://jashkenas.github.com/coffee-script/#operators): mire "la variante accesoria del operador existencial" '? .' :) –