我正试图将Boostrap的button.js与Meteor一起使用,但它并没有按照我预期的方式运行。
以下方法用于处理登录事件:
Template.login_form.events['click #login-button'] = function (evt, tmpl){
console.log($('#'+evt.target.id));
console.log([evt.target]);
console.log($('#'+evt.target.id).button('loading'));
console.log(evt.target.button('loading'));
};
前两个方法返回完全相同的东西,一个带有#login-button DOM元素的数组。但是,看看后两个调用,只有一个使用JQuery查找的调用可以工作。
当涉及到Bootstrap、JQuery或JS时,我是错过了什么,还是这是Meteor的怪癖?
bootstrapbutton
方法仅适用于jQuery对象,而不适用于普通DOM对象。所以,这与Meteor.js无关
console.log($(evt.target).button('loading'));
编辑:顺便说一下,以下两行也不等价:
console.log($('#'+evt.target.id));
console.log([evt.target]);
后者返回一个普通数组,而jQuery函数$
返回一个特殊的jQuery集合,其中提供了button
方法。