亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Knockout visible綁定使用方法

 更新時(shí)間:2013年11月15日 09:43:04   作者:  
本文講解Knockout讓visible綁定到DOM元素上,使得該元素的hidden或visible取決于綁定的值,下面有代碼參考
簡(jiǎn)單的綁定

首先還是先定義一個(gè)ViewModel
復(fù)制代碼 代碼如下:

    var AppViewModel = {
        shouldShowMessage: ko.observable(true)  ///初始化的時(shí)候div是visible的    
    };

    AppViewModel.shouldShowMessage = ko.observable(false);   ///現(xiàn)在hidden勒
    ko.applyBindings( AppViewModel);


并且通過(guò)ko.applyBindins進(jìn)行激活Knockout。
然后定義一個(gè)UI界面元素
復(fù)制代碼 代碼如下:

<div data-bind="visible:shouldShowMessage">
    You will see this message only when "shouldShowMessage" holds a true value.
</div>

運(yùn)行之后此div在初始化的時(shí)候還是顯示的可以,之后就被重新賦值為false,導(dǎo)致此div被隱藏掉了。
參數(shù):
當(dāng)參數(shù)設(shè)置為一個(gè)假值時(shí)(例如:布爾值false, 數(shù)字值0, 或者null, 或者undefined) ,該綁定將設(shè)置該元素的style.display值為none,讓元素隱藏。它的優(yōu)先級(jí)高于你在CSS里定義的任何display樣式。
當(dāng)參數(shù)設(shè)置為一個(gè)真值時(shí)(例如:布爾值true,或者非空non-null的對(duì)象或者數(shù)組) ,該綁定會(huì)刪除該元素的style.display值,讓元素可見(jiàn)。然后你在CSS里自定義的display樣式將會(huì)自動(dòng)生效。
如果參數(shù)是監(jiān)控屬性observable的,那元素的visible狀態(tài)將根據(jù)參數(shù)值的變化而變化,如果不是,那元素的visible狀態(tài)將只設(shè)置一次并且以后不在更新。
使用函數(shù)或者表達(dá)式來(lái)控制元素的可見(jiàn)性
你也可以使用JavaScript函數(shù)或者表達(dá)式作為參數(shù)。這樣的話(huà),函數(shù)或者表達(dá)式的結(jié)果將決定是否顯示/隱藏這個(gè)元素。例如:
復(fù)制代碼 代碼如下:

<script type="text/javascript">
    var AppViewModel = {
        shouldShowMessage: ko.observable(true),   ///初始化的時(shí)候div是visible的
        myValues: ko.observableArray([])        
    };

    AppViewModel.shouldShowMessage = ko.observable(false);   ///現(xiàn)在hidden勒
    AppViewModel.myValues.push("some value");                   ///向myValues數(shù)組中 添加一個(gè)項(xiàng)
    ko.applyBindings( AppViewModel);
</script>

在ViewModel中添加了一個(gè)myValues的屬性值
同時(shí)給myValues的數(shù)組添加了一個(gè)項(xiàng)
并且在頁(yè)面UI中綁定了一個(gè)元素
復(fù)制代碼 代碼如下:

<div data-bind="visible: myValues().length > 0">   
  You will see this message only when 'myValues' has at least one member.
</div>

就這樣當(dāng)添加完"some value"元素之后,myValues().length>0 則結(jié)果為true
那么此div就會(huì)顯示出來(lái)。

相關(guān)文章

最新評(píng)論