我有一些内容从knockout.js加载:
<div class="knockout-text">
<label data-bind="html: myText"></label>
</div>
我想添加一些jQuery来检查这个标签的高度,如果它超过100px,添加一个更多的读取切换。
我的问题是我似乎无法在页面底部添加一段脚本,因为它将在调用Knockout内容之前调用。
任何人都可以告诉我如何调用这个jQuery片段AFTER淘汰赛已经加载了内容。
(请注意我没有使用knockout.js的经验,其他人最初编码这个,我正在尝试添加更多功能)
非常感谢!
答案 0 :(得分: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());