关于改变DOM结构实现relativeTo里面的parent的问题
来源:
廖熊猫
2016-09-18
component.on('onLoad',function(){ if( cfg.relativeTo ){ var parent = component.parent().find('.h5_component_name_'+cfg.relativeTo); if(parent.size()){ component.appendTo(parent); } cfg.relativeTo = false; } setTimeout(function(){ component.addClass(cls+'_load').removeClass(cls+'_leave'); cfg.animateIn && component.animate( cfg.animateIn ); },cfg.delay || 0) return false; })
var parent = component.parent().find('.h5_component_name_'+cfg.relativeTo);
这个里面的获取parent应该发生在插入component元素以前吧,那component不就不存在parent了么?
写回答
1回答
-
这个代码是在 'onLoad' 的时候,执行的。我们可以看下 compnet 从创建到被插入的顺序。
H5().addPage().addCompnent() ,执行完成后, componet 被插入到当前的 page 中
Page 内所有 Component 触发 onLoad 操作,如果当前 Component 有relativeTo 参数,则调整自己的'位置',把自己插入到 Parent 中
所以不会决不你说的那个问题,“component 从 parent 中抽走被追加到 page 中”
012016-09-20
相似问题