編輯:在這裏找到了答案:Using Ember.js, how do I run some JS after a view is rendered?灰燼事件比單擊
在MapView的
didInsertElement: function() {
this._super();
map_initialize();
},
***********原帖******* *********
我很新的JS,我試圖ember.js。
我想使用谷歌地圖API來顯示地圖。通常你應該初始化地圖
<body onload="map_initialize()">
但隨着地圖的div會收到地圖是灰燼視圖模板的一部分,它尚未在DOM當函數被調用。
console.log(document.getElementById("map_canvas"));
返回false。
我然後放在初始化函數在我的地圖視圖,以便可以從綁在地圖DIV本身的事件調用它。這樣,在div加載之前調用map_initialize()是不可能的。
<script type="text/x-handlebars" data-template-name="map" >
<div id="map_canvas" style="width:100%; height:100%" {{action "map_initialize" on="click"}}></div>
</script>
這個完美的作品。當頁面加載時,我可以點擊地圖div,然後加載地圖。
我的問題是,我怎麼能得到這個事件被自動調用了DIV被添加到DOM
<div id="map_canvas" style="width:100%; height:100%" onload="initialize()"></div>
後有沒有效果(map_initialize()函數不叫)。
我也試圖通過恩伯,
<div id="map_canvas" style="width:100%; height:100%" {{action "map_initialize" on="load"}}></div>
要做到這一點,但是這也什麼都不做。
什麼是正確的事件名稱?
感謝