我正在尝试将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-element的数组。但是,查看后两个调用只有使用JQuery查找的调用才有效。
对于Bootstrap,JQuery或JS,我是否遗漏了一些东西,或者这是一个流星怪癖?
答案 0 :(得分:2)
bootstrap button
方法仅适用于jQuery对象,而不适用于纯DOM对象。所以,这与Meteor.js无关。您的上一个示例可能如下所示:
console.log($(evt.target).button('loading'));
编辑:顺便说一下,以下两行也不相同:
console.log($('#'+evt.target.id));
console.log([evt.target]);
后者返回一个普通数组,而jQuery函数$
返回一个特殊的jQuery集合,除其他外,它提供button
方法。