想知道我是否可以将jQuery插件应用于由 knockout 模板生成的div。
这是我在做什么:
我有一个模板
<script type="text/html" id="single-file-image-template">
<div id="iviewer"></div>
</script>
那么我该如何做类似我在jquery风格中所做的事情?
var iv = $('#iviewer').iviewer(
'loadImage', documentUrl
);
欢迎任何建议!
问候
泽维尔
最佳答案
您可以创建一个自定义绑定(bind),如下所示:
ko.bindingHandlers.iviewer = {
init: function (element, valueAccessor, allBindingsAccessor) {
var value = ko.utils.unwrapObservable(valueAccessor());
//initialize iviewer with url
$(element).iviewer('loadImage', value);
},
//update the control when the view model changes
update: function(element, valueAccessor) {
var value = ko.utils.unwrapObservable(valueAccessor());
$(element).iviewer('loadImage', value);
}
};
并以这种方式使用它:
<div data-bind="iviewer : url">
<div>
ko.applyBindings({ url : 'yourUrl'});
See fiddle
关于jquery - 如何将jQuery插件应用于由 knockout 模板生成的div,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20403361/