我从Sencha学习ExtJS,接下来的任务很简单:
我写这段代码:
HTML
<div id="div_1" style="border:1px solid gray; padding:5px; margin:5px;"></div>
<div id="div_2" style="border:1px solid gray; padding:5px; margin:5px;"></div>
JS
Ext.create('Ext.Button',{
str: 'I like to move it!',
text:'Test Button',
renderTo:'div_1',
handler:function(){
var parent_id = Ext.get(this.id).parent().id;
var renderTo = (parent_id == 'div_1') ? 'div_2' : 'div_1';
this.cloneConfig({
renderTo:renderTo
});
Ext.get(parent_id).update('');
}
});
此代码解决了这个问题,但我认为创建新按钮并通过dom操作清除旧代码是个坏主意。
问题:将按钮移动到另一个div的正确方法是什么?
答案 0 :(得分:0)
如果你对性能如此担心。也许你可以改变div和id的位置。
使用纯css定位更改并交换id。如果它不影响其他功能。
答案 1 :(得分:0)
Ettavolt 给了我这个决定:
handler:function(){
var el = this.el,
current = el.up('').id;
el.appendTo((current == 'div_1') ? 'div_2' : 'div_1');
}
我认为这是移动按钮或任何其他元素的最佳方式。