在x-handlebars脚本中执行javascript

时间:2012-08-09 20:28:38

标签: jquery ember.js

我正在使用Ember,我正在尝试在x-handlebars脚本段内部执行一些javascript代码(不可能在内部放一个是吗?)。这是我的代码:

<script type="text/x-handlebars" data-template-name="home">

 <div id="slideshowfrontpage">

  <script type="text/javascript">

   $.vegas( 'slideshow' , {valign:'center',
   backgrounds: homeImgURLs
   })('overlay', {
   src:'css/images/overlays/01.png'
   }); 

  </script>

 </div>

</script>

我该怎么办?谢谢!

1 个答案:

答案 0 :(得分:4)

如果您想在每次将元素添加到DOM时关闭javascript,您应该在didInsertElement method中添加该代码。

Em.View.create({
    templateName: 'home',

    didInsertElement: function(){
        this.$().vegas( 'slideshow' , {valign:'center',
            backgrounds: homeImgURLs
        })('overlay', {
            src:'css/images/overlays/01.png'
        }); 
    }
});

这个。$()实际上会获得该视图的DOM元素(这非常好)。每次视图被附加时,这将触发一次,有一个匹配方法,用于从DOM中删除它。