Jquery ui 如何在Ember中创建类似对话框的控件?

Jquery ui 如何在Ember中创建类似对话框的控件?,jquery-ui,ember.js,Jquery Ui,Ember.js,我想创建一个类似控件的对话框,以便在需要使用Ember时重用。Dialog将使用Jquery库的$('foo')。Dialog函数来实现它。E.x: 你能给我一些想法和例子吗。谢谢。Luke Melia创建了一个演示如何在jQuery UI中使用Ember.js的应用程序 基于Luke的示例,我创建了一个表示jQuery UI对话框的JQ.Dialog类,请参见: //使用Ember为jqueryui小部件创建一个新的mixin //mixin语法。 JQ.Widget=Em.Mixin.cr

我想创建一个类似控件的对话框,以便在需要使用Ember时重用。Dialog将使用Jquery库的$('foo')。Dialog函数来实现它。E.x:

你能给我一些想法和例子吗。谢谢。

Luke Melia创建了一个演示如何在jQuery UI中使用Ember.js的应用程序

基于Luke的示例,我创建了一个表示jQuery UI对话框的
JQ.Dialog
类,请参见:

//使用Ember为jqueryui小部件创建一个新的mixin
//mixin语法。
JQ.Widget=Em.Mixin.create({
//定义见
// https://github.com/lukemelia/jquery-ui-ember/blob/master/js/app.js#L9-95
...
});
Dialog=Ember.View.extend(JQ.Widget{
uiType:“对话框”,
uiOptions:'自动打开高度宽度'.w(),
自动打开:错误,
打开:函数(){
这个.get('ui').dialog('open');
},
关闭:函数(){
这个.get('ui').dialog('close');
}
});
然后,将创建如下对话框:

var dialog=JQ.dialog.create({
身高:100,
宽度:200,
templateName:“对话框内容”
});
dialog.append();
Ember.run.later(函数(){
dialog.open();
}, 1000);


除了可以使用的jQuery UI之外,还有一个用于Ember.js的小部件/UI库。此项目支持面板,请参见:

//以下代码示例取自http://jsfiddle.net/qUBQg/
App.TestPanel=Flame.Panel.extend({
布局:{宽度:400,高度:200,centerX:0,centerY:-50},
//控制是否遮挡所有其他控件(即阻止
//显示面板时从任何输入)
伊斯莫达尔:是的,
//这仅控制视觉效果,并且仅在以下情况下起作用:
//IsModel设置为true
背景:是的,
//如果您希望,例如,仅允许关闭面板,则设置为false
//通过单击面板上的某个按钮(如果是iModal,则无效
//(不正确)
允许通过单击外侧关闭:true,
//允许通过在标题栏上拖动移动-默认值为false
allowMoving:是的,
//标题是可选的-如果未定义,则不显示标题栏
标题:“测试面板”,
//面板必须只有一个子视图名为contentView
contentView:Flame.LabelView.extend({
布局:{左:20,上:90,右:20,下:20},
textAlign:Flame.ALIGN_CENTER,
值:“这是一个面板。”
})
});
//代码的后面部分
App.TestPanel.create().popup();

谢谢pangratz,但我只想创建一个简单的对话框,比如使用Jquery库的$('foo')。对话框。你能给我一些想法吗?那么,你应该详细说明你的问题。更新它并添加您真正想要做的。。。。。。我找到了Em.Mixin.create的来源。