是否可以将事件绑定到Closure中类的所有元素?我知道在jQuery中它就像
$('.my_class').click(...)
Closure中有类似的东西吗?像
这样的东西goog.events.listen('.my_class', ...)
答案 0 :(得分:0)
你的意思是下面的东西吗?
参考:http://closure-library.googlecode.com/git-history/docs/namespace_goog_events.html
var source = new goog.events.EventTarget();
function handleEvent(e) {
alert('Type: ' + e.type + '; Target: ' + e.target);
}
source.listen('foo', handleEvent);
// Or: goog.events.listen(source, 'foo', handleEvent);
...
source.dispatchEvent('foo'); // will call handleEvent
...
source.unlisten('foo', handleEvent);
// Or: goog.events.unlisten(source, 'foo', handleEvent);
答案 1 :(得分:0)
正如joeltine已经提到的,Google Closure Lib中没有这样的原生方法。您可以使用G-Library: https://github.com/rhysbrettbowen/G-closure#gon-uid
或者创建另一个原型来提供高级的listen方法。这些成就可以为基本要素服务:
yourapp.prototype.listenAll = function(nodes, callbackFunc) {
for (var i = 0; i < nodes.length; i++) {
goog.events.listen(nodes[i], type, callbackFunc);
}
};