public override void Update(System.Html.Element element, Func <object> valueAccessor, Func <System.Collections.Dictionary> allBindingsAccessor, object viewModel, object context) { // Whenever the value subsequently changes, slowly fade the element in or out Observable <bool> observable = (Observable <bool>)valueAccessor(); string effectIn = (string)((object)allBindingsAccessor()["effectIn"]); string effectOut = (string)((object)allBindingsAccessor()["effectOut"]); jQueryObject item = jQuery.FromElement(element); string effect = KnockoutUtils.UnwrapObservable(observable) ? effectIn : effectOut; switch (effect) { case "fadeIn": item.FadeIn(); break; case "fadeOut": item.FadeOut(); break; case "slideUp": item.SlideUp(); break; case "slideDown": item.SlideDown(); break; } }