- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 RPNiemeyer 的剑道 knockout 库。我有一个剑道窗口:
HTML:
<div data-bind="kendoWindow: {isOpen: isOpen, title:'Language', width: 400, height: 200, modal: true, widget: popUpWindow }" >
使窗口居中的 JavaScript 部分:
this.popUpWindow = ko.observable();
self.isOpen.subscribe(function (newValue) {
if (newValue) {
self.popUpWindow().center();
}
});
我正在使用我之前问题中的源代码作为我的 fiddle :
Kendo-Knockout: Window does not close correctly
我正在按照此处显示的步骤操作:
Kendo-Knockout: How to center window
我正在定义可观察的小部件,但是当我想使用它时,它并没有填充实际的小部件。
fiddle : http://jsfiddle.net/dcYRM/15/
任何有关工作示例的帮助将不胜感激。
最佳答案
看起来有几个问题:
首先,您的 isOpen
订阅在小部件被填充之前正在运行。
其次,填充小部件后,它会导致数据源刷新并尝试序列化包括小部件在内的模型,这会导致问题。这最终是因为 Knockout-Kendo 在解开传递到网格的数据方面有点过于激进。
我发现有两种非常简单的方法可以解决这个问题。最简单的方法是为小部件的 open
事件设置一个全局处理程序并在其上设置调用中心。
将其与上一个问题中的 close
事件放在一起,看起来像:
ko.bindingHandlers.kendoWindow.options = {
close: function() {
$('.k-window, .k-overlay').remove();
},
open: function(event) {
event.sender.center();
}
};
现在,每当打开任何窗口时,它都会居中,您根本不需要弄乱该小部件。示例在这里:http://jsfiddle.net/rniemeyer/F4JGG/
这看起来是最好的选择。为了使其能够与小部件本身的引用一起工作,您需要解决库中的问题。如上所述,它有点过于激进并展开选项,并且当初始化小部件、传递小部件参数并且已经填充了小部件时,这似乎会导致问题。当我有机会时,我应该能够在图书馆解决这个问题。
否则,你必须这样做:
self.popUpWindow = ko.observable();
self.popUpWindow.subscribe(function (widget) {
if (widget) {
widget.center();
self.popUpWindow(null); //hack - Knockout-Kendo should handle this one
}
});
因此,在调用 center
后清除可观察对象。这是一个示例:http://jsfiddle.net/rniemeyer/PVMjy/ 。我还订阅了小部件的可观察本身,因此不存在上面提到的 isOpen
的计时问题。
在这种情况下,设置全局 open
处理程序似乎是最干净、最好的选择。
关于javascript - 剑道击倒 : widget observable is not filled with the actual widget,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14213330/
我需要为客户端调整 bittrex api: LIMIT_BUY 或 LIMIT_SELL(和 CANCEL)订单到目前为止有效。 但是他遇到了部分填充的问题。 api 文档。在他们的网站上没有提到这
所以我发现 color 数据类型实际上是一个 int,阅读了一些有关位移位的内容,目的是让自己成为一个类来处理这个问题。 这是基本代码(没有 getters/setters,所有内容都是 public
这个问题在这里已经有了答案: Unexpected behavior using Array Map on an Array Initialized with Array Fill [duplica
当我在 zoom to fill screen 和 stretch to fill screen 之间切换时,我的应用程序会崩溃。顺便说一下,我注意到市场上很多应用程序都有这个问题。有谁知道如何避免这
Sample Text Here Sign Up 我有上面的 HTML 部分,我正在尝试
在html中我可以设置背景图片的下面属性吗?(图片在iOS中我可以像下面这样设置图片的填充属性,但我不知道html中是否有类似的属性): Scale to Fill, Aspect Fit, Aspe
我对 HTML 上一个填充和另一个填充之间的现有空间感到困扰。每个填充物都适合倾斜的一侧。我希望完全填满这条线,但还有空间。 这是示例代码: var canvas = document.createE
考虑 pygame 循环中的这一行: pygame.display.set_mode().fill((0, 200, 255)) 发件人:http://openbookproject.net/thin
我在一个系统上观察到 std::fill在大 std::vector设置常量值 0 时明显且始终较慢与常数值 1 相比或动态值: 5.8 GiB/s 对比 7.5 GiB/s 但是,对于较小的数据大小
我正在做一个元素。在那个元素中,我需要一个 div 的渐变背景。我只需要一种颜色来填充 40px。另一种颜色填充计算(100%-40px)。我从来没有这么深入地玩过渐变。我的 40px 颜色是 rgb
我正在使用的 API 的用户注册代码一直存在问题。 我有一个 UserController,它获取发布的数据并验证字段。然后它将数据发送到我的 UserService 类中的 SignUpUser 方
Facebook AudienceNetwork 加载失败:无填充,错误消息“无填充”,FaceBook android Advertise 的原因是什么? Facebook 广告经常显示加载频率,频
我在 UITableViewCell 中使用了 UIImageView,它将填充 contentView。我尝试了不同的模式,如“缩放以填充”、“Aspect Fit”、“” Aspect Fill”
这个问题已经有答案了: Array.fill(Array) creates copies by references not by value [duplicate] (3 个回答) 已关闭 4 年前
问题 我将我的一些图像放在 /assets/images 文件夹中。然后在 layouts/_default/single.html 中,我为不同的屏幕尺寸创建了一个主图部分,如下面的代码所示。问题是
我知道有 CGContextClearRect ,尽管它可以让你清除 drawRect 类中的所有内容。我如何选择一个 CGContextRef 并清除它?对于我的情况,我的代码如下: //Put c
我有一个包含 3 列的 Tlistview,我需要来自 Tcollection 对象,如下所示 FListeDispoProduit := TListeDispoProduit.Create(TPro
有没有办法抑制babel提供的polyfill?例如,转译以下内容: const obj = { a: 1 }; const obj2 = { ...obj }; 将输出 var _extends =
如何使用 Excel 中的 VBA(所有单元格)将所有工作表填充颜色设置为无填充。与选择所有工作表相同,选择所有单元格 (Control+A) 并将填充颜色更改为无填充。 最佳答案 未经测试,但应该可
我想知道如何在数组上应用洪水填充,我的数组是二维的,其中包含 times new roman 字体类型的字母边界。边界线包含 1,内外全为 0。我只想在内部填充所有 1 而不是 0。但我需要一个不需要
我是一名优秀的程序员,十分优秀!