2013-10-31 41 views
1

我有正從knockout.js加載一些內容:呼叫Knockout.js後jQuery函數加載內容

<div class="knockout-text"> 
    <label data-bind="html: myText"></label> 
</div> 

我想補充的jQuery位檢查此標籤的高度和如果它超過100px,請添加閱讀更多切換。

我的問題是,我似乎無法在頁面底部添加腳本片段,因爲它將在Knockout的東西被調用之前調用。

任何人都可以告訴我如何調用這個片段的jQuery AFTER淘汰賽已經加載內容請。

(請注意我有knockout.js沒有經驗,別人最初的代碼和我想添加更多的功能)

非常感謝!

回答

5

也許最簡單的方法是創建一個自定義綁定(http://jsfiddle.net/C66ab/1/,檢查控制檯)

HTML:

<div class="knockout-text"> 
    <label data-bind="html: myText, detectHeight:{}"></label> 
</div> 

JS:

var VM = function(){ 
    var self = this; 
    self.myText = "lorem lorem...<br/>asdad"; 
} 


    ko.bindingHandlers.detectHeight = { 
     init: function(element, valueAccessor, allBindingsAccessor, viewModel) { 
      console.log($(element).css("height")) 
     } 
    }; 

    ko.applyBindings(new VM()); 
+0

真棒這就是我追求!謝謝v.much – jonnow

+0

好的,記住如果它有用,請接受/提出答案。 – pax162