jQuery UI对话框自动设置iframe宽度

我想问为什么jQuery UI对话框会自动将宽度设置为“自动”?

下面是我构建一个对话框的iframe。

 

它有一个固定的宽度和高度。 但每当我调用“对话框(’打开’)”时,宽度就会自动变为“自动”。 至于它被设置为某个固定值的高度(我猜它是由jQuery UI计算的)

初始化对话框时,我已经设置了宽度和高度。 像这样:

 var dg = {}; dg.title = this.title; dg.autoOpen = false; dg.modal = true; dg.overlay = { opacity: 0.4, background: "#000" }; dg.resizable = false; $('#pklist3').dialog(dg); //iframe width is still fixed value up to this line 

但在此之后:

 $('#pklist3').dialog('open'); //iframe width gets "auto" automatically 

这是一种已知行为吗? 有没有办法我们可以自己定义iframe的宽度和高度?

PS。 我正在使用jQuery UI 1.8.16和jQuery 1.6.2,当我启动对话框时,iframe的宽度不会改变。 只有在我调用对话框后才会改变(’打开’)

如果其他人正在处理这个问题,并且在这篇文章上发现了,就像我一样,我最终找到了一个适用于我的解决方案: http : //enotacoes.wordpress.com/2012/04/19/setting-iframe-宽度在-jQuery的对话/

基本上,您可以在iframe样式中设置最小宽度,而不是(或另外使用)宽度样式。

  

您可以在init上定义元素width

 $('#something').dialog({ width: '100px' }); 
   

我认为scrolling="no"是必要的。