Javascript 为什么模板div显示为“quot;”:“隐藏的”;在后渲染中?
为什么模板div在afterRender中显示为“:hidden” 代码如下:Javascript 为什么模板div显示为“quot;”:“隐藏的”;在后渲染中?,javascript,knockout.js,Javascript,Knockout.js,为什么模板div在afterRender中显示为“:hidden” 代码如下: $(文档).ready(函数(){ m=函数(名称) { this.name=名称; } 视图模型={ a:ko.array(), 斯巴基:功能(元素){ div=元素[0]; log($(div).is(':hidden'); }, } 应用绑定(视图模型); viewModel.a.push(新的m('oh-no')); }); ${$data.name} 在foreach模式下为模板绑定调用afterRend
$(文档).ready(函数(){
m=函数(名称)
{
this.name=名称;
}
视图模型={
a:ko.array(),
斯巴基:功能(元素){
div=元素[0];
log($(div).is(':hidden');
},
}
应用绑定(视图模型);
viewModel.a.push(新的m('oh-no'));
});
${$data.name}
在foreach
模式下为模板绑定调用afterRender
时,元素尚未添加到DOM中。执行一些附加处理以确保有效地添加/删除节点
但是,当使用
foreach
选项在元素位于DOM中后执行代码时,可以使用afterAdd
回调 在foreach
模式下为模板绑定调用afterRender
时,元素尚未添加到DOM中。执行一些附加处理以确保有效地添加/删除节点
但是,当使用
foreach
选项在元素位于DOM中后执行代码时,可以使用afterAdd
回调 afterRender
用于
习俗
DOM上的后处理逻辑
由模板生成的元素
但不幸的是,它是在模板准备就绪(应用于DOM)后调用的,但它还没有插入html
如果你使用foreach,击倒将
调用您的afterRender回调以获取
添加到可观察到的每个项目
排列
但是,如果传递模板的数据,if也将被调用一次
KO允许您提供afterAdd和/或
beforeRemove回调操作
中添加/删除的DOM元素
定制方式
因此,将为ObservalArray中的每个添加/删除项调用这些。
当这些被调用时,您的DOM已经准备好了,因此您将不再隐藏它,但是这些回调仅在底层ObservalArray发生更改时才被调用
<div data-bind="template: { name: 'tpl', foreach: a, afterAdd: sparkie }"></div>
后渲染
用于
习俗
DOM上的后处理逻辑
由模板生成的元素
但不幸的是,它是在模板准备就绪(应用于DOM)后调用的,但它还没有插入html
如果你使用foreach,击倒将
调用您的afterRender回调以获取
添加到可观察到的每个项目
排列
但是,如果传递模板的数据,if也将被调用一次
KO允许您提供afterAdd和/或
beforeRemove回调操作
中添加/删除的DOM元素
定制方式
因此,将为ObservalArray中的每个添加/删除项调用这些。
当这些被调用时,您的DOM已经准备好了,因此您将不再隐藏它,但是这些回调仅在底层ObservalArray发生更改时才被调用
<div data-bind="template: { name: 'tpl', foreach: a, afterAdd: sparkie }"></div>