我有一个使用 Durandal 的 Web 应用程序,我想调用
$(document).ready(function() {
$('.selectpicker').selectPicker();
}
每次更新视图时。有人对如何解决这个问题有任何建议吗?
使用 durandal,您不需要使用 jQuery 的文档就绪事件。只需将其放入视图模型的附加事件中,然后将该事件公开给视图...
define([], function () {
var attached = function (view) {
$('.selectpicker').selectPicker();
};
var vm = {
attached: attached;
};
return vm;
});
如果您使用 Durandal 的路由器,这将在 DOM 准备好(即附加视图)时触发您想要的内容。正如评论中提到的,为了使这更好,您可以将所有 DOM 操作移动到自定义绑定处理程序中,并提高代码的重用性和可读性。