流星如何處理實時變化?例如,我不希望變化是瞬間的,但有些種類的動畫。如果我們使用css動畫/轉換來放置正在改變的項目,這是否行得通?那些舊版瀏覽器的jQuery動畫怎麼樣?流星的生活變化有動畫嗎?
回答
下面是流星簡單動畫的一個工作示例。
這裏的情況是我們有一個項目列表。如果用戶點擊這些項目中的任何一個,該項目將向左移動20px。
JS
//myItem
Template.myItem.rendered = function(){
var instance = this;
if(Session.get("selected_item") === this.data._id){
Meteor.defer(function() {
$(instance.firstNode).addClass("selected"); //use "instance" instead of "this"
});
}
};
Template.myItem.events({
"click .myItem": function(evt, template){
Session.set("selected_item", this._id);
}
});
//myItemList
Template.myItemList.helpers({
items: function(){
return Items.find();
}
});
模板
<template name="myItem">
<div class="myItem">{{name}}</div>
</template>
<template name="myItemList">
{{#each items}}
{{> myItem}}
{{/each}}
</template>
CSS
.myItem { transition: all 200ms 0ms ease-in; }
.selected { left: -20px; }
而不是使用花哨的CSS,你也可以激活使用jQuery:
Template.myItem.rendered = function(){
if(Session.get("selected_item") === this.data._id){
$(this.firstNode).animate({
left: "-20px"
}, 300);
}
};
但是,您需要刪除CSS代碼。
.myItem { transition: all 200ms 0ms ease-in; }
.selected { left: -20px; }
謝謝,這對我有幫助。注意'if(Session.get(「selected_item」)=== this.data._id)'不適合我;我不得不修改'rendered'函數來包含這樣的代碼:'$('#'+ Session.get(「selected_item」))。addClass(「selected」)''。 –
@TimBartsch我從文檔中找不到'Meteor.defer()'。它有什麼作用? –
有這樣的一種解決方法:
<template name="foo">
..content..
{{bar}}
</template>
在這種情況下,流星會調用Template.foo.bar
每次這個模板被渲染。所以在這個函數中,你可以做各種Jquery或CSS3動畫(例如通過向模板div添加一個類)。
這裏的例子會很棒。 (請注意,「有用的問題」的贊成票比「答案是否有用」多得多))。也許你可以更新你的答案? –
對於CSS過渡,有兩個選項,你可以去:
1. Reactively: the Meteor way
2. Directly: the jQuery way
這裏是一個工作示例: http://bindle.me/blog/index.php/658/animations-in-meteor-state-of-the-game
- 1. 流星動畫
- 2. 動畫BEFORE活動變化
- 3. 動畫流星問題的實時變化
- 4. 流星客戶端mongodb發生變化
- 5. 流星jQuery的動畫
- 6. 流星#each:動畫的新項目
- 7. 獲取流星觀看node_modules的變化
- 8. 在工作流程活動發生變化後回收窗口工作流程
- 9. 角流星中的非活動非mongo變量
- 10. 當div的高度發生變化時動畫變化
- 11. Z-order在android 7.0(nougat)的活動過渡動畫中發生了變化?
- 12. 當某些字段發生變化時,流星不會重排
- 13. 流星:變量變
- 14. 流星獲取動態生成的值
- 15. 流星雨收集觀測變化
- 16. 搜索引擎優化與流星的動態網址變量
- 17. 流星角色包有多靈活?
- 18. 更新「活的」WPF畫布(折線),當PointCollection發生變化時
- 19. Android - 如何停止活動變化之間的動畫
- 20. setcontetview變化動畫
- 21. UINavigationController動畫變化
- 22. jquery價值變化生活
- 23. 有很多數據庫變化的流星
- 24. 流星角:角和流星包:角流星有沒有區別?
- 25. 我可以動畫背景漸變的變化嗎?
- 26. ID變化的jQuery動畫
- 27. 活動改變的翻轉動畫
- 28. 流星:所有Meteor.method的訪問變量
- 29. 在R中生成動畫彗星圖
- 30. 流星動態表單字段生成
+1有趣的是,這可能無線將需要一些實施變更。 –