Javascript Ember.js在模板呈现时加载jquery(无刷新)
我已经创建了一个ember.js模板(about.hbs)。我想在页面上运行一些jQuery,但jQuery只有在重新加载页面时才起作用 我并没有真正理解在呈现模板时如何使用jQuery代码使其运行。现在我已经把它放在控制器里了Javascript Ember.js在模板呈现时加载jquery(无刷新),javascript,jquery,ember.js,Javascript,Jquery,Ember.js,我已经创建了一个ember.js模板(about.hbs)。我想在页面上运行一些jQuery,但jQuery只有在重新加载页面时才起作用 我并没有真正理解在呈现模板时如何使用jQuery代码使其运行。现在我已经把它放在控制器里了 App.AboutController = Ember.ObjectController.extend({ $(document).ready(function() { //my jquery code });
App.AboutController = Ember.ObjectController.extend({
$(document).ready(function() {
//my jquery code
});
});
有人能帮我吗 您将需要执行生命周期回调()。呈现模板时,Ember将触发
didInsertElement
回调。您只需将自己的代码添加到此函数中,如果您想在该回调中使用任何jQuery,您必须记住范围:this.$()
您的代码如下所示:
didInsertElement: function(){
this.$() //jquery code
}
这不是有效的JavaScript。那么它是否会出现在控制器中?我有下面的代码,但它似乎仍然不起作用。App.avootcontroller=Ember.ObjectController.extend({didInsertElement:function(){this.$()//Launch Intro$(document).ready(函数(e){$('#launchIntro').on('touchstart click',function(){$('.Intro overlay').fadeOut();$('#Intro slider slider.fadeIn();});}});或者这就是进入控制器的方式?这似乎也不起作用
didInsertElement:function(){this.$('.intro overlay').fadeOut();}
didInsertElement
是视图和组件的回调。与DOM交互的代码应该放在视图中,组件是视图的一种类型。