Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.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
Javascript 在knockoutjs中始终使用jquery slideUp slideDown_Javascript_Jquery_Knockout.js_Knockout 2.0 - Fatal编程技术网

Javascript 在knockoutjs中始终使用jquery slideUp slideDown

Javascript 在knockoutjs中始终使用jquery slideUp slideDown,javascript,jquery,knockout.js,knockout-2.0,Javascript,Jquery,Knockout.js,Knockout 2.0,我知道如何在knockoutjs中创建自定义绑定,以便在可观察值发生变化时添加jquery转换动画 我想知道是否有某种方法可以在可视性根据可观察值发生变化时附加一个转换,如slideUp/slideDown 例如,当使用“with”绑定时,当observable的值变为null时,DOM元素自动变为不可见。每当发生这种情况时,我都想添加jquery转换。您看过这个吗: 这可以通过使用自定义绑定来实现 HTML JavaScript <div> Visible <inp

我知道如何在knockoutjs中创建自定义绑定,以便在可观察值发生变化时添加jquery转换动画

我想知道是否有某种方法可以在可视性根据可观察值发生变化时附加一个转换,如slideUp/slideDown


例如,当使用“with”绑定时,当observable的值变为null时,DOM元素自动变为不可见。每当发生这种情况时,我都想添加jquery转换。

您看过这个吗:

这可以通过使用自定义绑定来实现

HTML JavaScript
<div>
    Visible <input type="checkbox" data-bind="checked: visible" />
    <div data-bind="slideIn: visible" class="slider">
        <h1>I'm visible</h1>
    </div>
</div>
.slider
{
    border: solid 1px rgb(200, 200, 200);
    color: rgb(50, 50, 50);
    background-color: rgb(100,255,100);
    text-align: center;
}
var VM = function(){
    this.visible = ko.observable(true)
};

ko.bindingHandlers.slideIn = {
    init: function (element, valueAccessor) {
        var value = ko.utils.unwrapObservable(valueAccessor());
        $(element).toggle(value);
    },
    update: function (element, valueAccessor) {
        var value = ko.utils.unwrapObservable(valueAccessor());
        value ? $(element).slideDown() : $(element).slideUp();
    }
};

ko.applyBindings(new VM());