Jquery对话框 - 在关闭之前不会淡出

时间:2010-05-03 18:24:11

标签: jquery jquery-ui

我的页面上有div(框),我正在使用此脚本将div显示为对话框。在div里面我有一个超链接,点击超链接我要淡出对话框并关闭..对话框的内容淡出,但对话框的边框保持不变。如果我在淡入淡出后添加$(“#box”)。dialog('close')到click函数没有效果..它只是完全关闭对话框。有帮助吗?使用jquery-ui-1.7.2

<script type="text/javascript">
            $(document).ready(function(){
                 $("a#later").click(function () { 

                $("#box").fadeTo('slow', 0);
                 })
             });
            $(function () {
                $("#box").dialog({
                    autoOpen: true,
                    width: 500,
                    modal: true,

                });
            });
</script>

5 个答案:

答案 0 :(得分:17)

怎么样

$("#box").fadeTo('slow', 0, function() {
  $("#box").dialog('close');
});

你想在淡入淡出完成后发生接近,对吗?

答案 1 :(得分:3)

试试这个,它可能有效:

$("a#later").click(function () {
   $("#box").fadeTo('slow', function() {
       $("#box").dialog("close")
   });
});

答案 2 :(得分:2)

我尝试下面的一些理查德的代码,它的工作原理。 您可以将效果名称提供为字符串:

$("#dialog").dialog({
  hide: "fadeOut"
});

或者如果您有其他选项,则可以提供哈希,例如:

$("#dialog").dialog({
  hide: {effect: "fadeOut", duration: 5000}
});

答案 3 :(得分:1)

试试这个:

            $(function () {
                $("#box").dialog({
                    autoOpen: true,
                    width: 500,
                    modal: true,
                    show: 'blind',
                    hide: 'fade'
                });
            });

点击此处的示例:Animated Dialog

答案 4 :(得分:1)

这是我的代码:

$(function() {
$( "a#link-id" ).click(function(){$(".ui-dialog").fadeOut(2000)})});

这是工作脚本:)。您无需单击“关闭”按钮。