我正在使用以下代码使用JQUERY / UI创建一个对话框:

var $dialog2 = $('<div id="sharerdialog2"></div>')
.html('<p>Loading...</p>')
.dialog({
    autoOpen: false,
    title: 'Image Stuffer',
    position: ['center',150],
    width: 450,
    focus:function(event, ui) {
        $('#dialogcloser').click(function() {
            $dialog.dialog('close');
        });
    },
    open: function(event, ui) {
        $("#sharerdialog2").load("MyURL.com");
    }
});

我正在尝试调用该对话框以将其打开,但是JQUERY并未使用以下命令找到它:
$dialog2.dialog('open');

奇怪的是,如果我在上述内容之后添加以下内容,则它确实适用于BIND:
$('#ttttt').click(function() {
$dialog2.dialog('open');
});

任何想法为什么会这样?如何调用对话框以在另一个函数中打开?

谢谢

最佳答案

您应该将代码包装在domready事件处理程序中:

$(document).ready(function() {

    $dialog2.dialog('open');

});

09-13 02:40