不想看思路的直接看代码处。
要实现jquery对话框根据内容大小而改变直接宽度,说白了就是让width和height设置为auto,结果真的是,网上找了一大堆,各种尝试,全部没有效果,要气炸了(实在是忍不住吐槽一波),最后还是找人帮忙 -_- 实现了,整体思路:这个样式是css控制的,对话框也没有id,所以不能直接通过jquery设置css来改变它属性,但是要做这个肯定是存在内容,那么弹出框就是这个内容标签的父标签, 这个内容标签的id是可以自己设置的,通过它找到对话框标签,再设置css属性即可。
核心:
$("#btn").click(function () {//检查获取的父标签是否是对话框标签,不是就直到找到为止,查找利用juqery查找标签请自行搜索alert($("#content").parent().attr("class")); //#content就是内容标签,这步是打开,一定要先打开再设置,顺序!!!//因为没打开页面都不存在对话框$("#content").dialog("open");//打开时控制对话框大小为自适应内容大小,因为height本来就是auto,所以就只设置了width属性也可设置其它固定值$("#content").parent().css("width","auto");});
点击click事件弹出包含content标签的对话框,且大小为自适应content大小