1

以下のように実行時にモレルポップアップを作成していますが、背景色のCSSを適用したいのですが、どのように適用すればよいですか?

$("<div></div>")
                .addClass("dialog1")
                .attr("id", $(this).attr("id"))
                .appendTo("body")
               // .addCss("background-color","red")
                .dialog({
                    title: $(this).attr("data-dialog-title"),
                    close: function () { $(this).remove() },
                    width: $(this).attr("data-dialog-width"),
                    modal: true,
                    position: 'center',
                    resizable: $(this).attr("data-dialog-resizable")
                }).load(url);

                $(".close").live("click", function (e) {
                    e.preventDefault();
                    // $(this).dialog('destroy').remove();
                    $(this).closest(".dialog1").dialog("close");
                });
4

5 に答える 5

3

次の代わりにcss()を使用できますaddCss

.css("background-color","red")

live()非推奨であるだけでなく、代わりに on() を使用する必要があります

于 2013-05-08T09:33:00.030 に答える
0

最も簡単な方法は、以下のように jquery ダイアログの background プロパティをオーバーライドすることです

.ui-dialog .ui-dialog-content {
        background: red;
    }
于 2013-05-08T09:37:07.313 に答える
0

使用する.css()

 $("<div></div>")
            .addClass("dialog1")
            .attr("id", $(this).attr("id"))
            .appendTo("body")
            .css("background-color","red")
            .dialog({
                title: $(this).attr("data-dialog-title"),
                close: function () { $(this).remove() },
                width: $(this).attr("data-dialog-width"),
                modal: true,
                position: 'center',
                resizable: $(this).attr("data-dialog-resizable")
            }).load(url);

on()の代わりに使用しますlive()

            $(".close").on("click", function (e) {
                e.preventDefault();
                // $(this).dialog('destroy').remove();
                $(this).closest(".dialog1").dialog("close");
            });

これを動的に生成された要素にアタッチする場合は、デリゲートします。

    $(document).on("click",".close", function (e) { //<--closest static element rather than document
                e.preventDefault();
                // $(this).dialog('destroy').remove();
                $(this).closest(".dialog1").dialog("close");
            });
于 2013-05-08T09:33:57.757 に答える
0

次のコードの使用を検討してください。

$("<div></div>")
    .addClass("dialog1")
    .attr("id", $(this).attr("id"))
    .appendTo("body")
    .css("background-color","red")
    .dialog({
            ...

重要なのは.css("background-color", "red")ラインです。

于 2013-05-08T09:34:27.620 に答える