Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 击倒罐';我不能上班_Jquery_Json_Knockout.js - Fatal编程技术网

Jquery 击倒罐';我不能上班

Jquery 击倒罐';我不能上班,jquery,json,knockout.js,Jquery,Json,Knockout.js,我已经和Knockout合作了几天了。事情进展相对顺利,但我遇到了一个问题。我似乎无法在这里运行动画转换。理想情况下,我希望能够淡出销毁事件中的单个元素。我还希望能够在页面转换上设置整个表的动画。我无法让任何元素工作,因为元素总是“未定义” 这是我的荣幸: <tbody data-bind='foreach: { data : $root.displayResults(startValue(), endValue()), beforeRemove: hideElement }'>

我已经和Knockout合作了几天了。事情进展相对顺利,但我遇到了一个问题。我似乎无法在这里运行动画转换。理想情况下,我希望能够淡出销毁事件中的单个元素。我还希望能够在页面转换上设置整个表的动画。我无法让任何元素工作,因为元素总是“未定义”

这是我的荣幸:

<tbody data-bind='foreach: { data : $root.displayResults(startValue(), endValue()), beforeRemove: hideElement }'>

看一看,让我知道你们的想法。

你们应该知道,KO将根据模板在删除之前多次调用
回调:在你们的情况下,它将是一个文本节点、tr和另一个文本节点

因此,您需要过滤掉文本节点,并且只在
elem.nodeType==1
时进行隐藏,这意味着节点类型是一个元素:

self.hideElement = function(elem) {
    if (elem.nodeType === 1) 
       $(elem).hide(300)
}
下面是一个带有工作删除功能的示例,我还添加了一些日志记录,以查看调用
beforeRemove
的次数


因此,还有的
hidePlanetElement
方法。

谢谢Nem,我昨晚确实解决了这个问题,并使它工作起来。我很喜欢击倒,但是当你第一次拿起它的时候,肯定有很多幕后的事情要做。
self.hideElement = function(elem) {
    if (elem.nodeType === 1) 
       $(elem).hide(300)
}