我去检查最近发布的 jQuery 1.8 (stable) 是否与我当前正在开发的项目兼容,令我惊讶的是,这是我看到的第一件事:
这让我很惊讶,因为我已经升级到 jQuery UI 1.8.22,根据它的发布帖子,它与 jQuery 1.8 兼容。
回调函数是根据调用的,但是按钮没有textNode
s ,正如在 DOM 检查器中看到的那样:
到目前为止,我发现的解决方案是:
- 降级回 jQuery 1.7.2(不过我想在我的页面中使用最新的 jQuery 版本)
- 升级到 jQuery UI 1.9.0pre(不稳定)
- 使用
open
处理程序或手动编辑对话框的 HTML 以包含我想要的文本。对于源代码中的错误,似乎有很多不必要的麻烦。
我错过了什么还是这是一个实际的错误?
这是我用于演示的小提琴:
jsFiddle
以及供将来参考的代码:
HTML:
<div id="foo" title="Dialog title">Dialog text</div>
JS:
$('#foo').dialog({
buttons: {
Yes: function() { $(this).dialog('close'); },
No: function() { $(this).dialog('close'); }
}
});