OOP JavaScript - Benutzerdefiniertes Div-Objekt erstellen

Ich fange gerade mit OOP in JavaScript an. Ich möchte ein benutzerdefiniertes "Panel" erstellen. Folgendes habe ich bisher:

function ShinyPanel(css, attributes)
{
    this.container = $(document.createElement("div")).addClass("shinyPanel");

    this.titleBar = $(document.createElement("div")).addClass("shinyPanelTitleBar").appendTo(this.container);
    this.topShine = $(document.createElement("div")).addClass("shinyPanelTopShine").appendTo(this.container);
    this.leftShine = $(document.createElement("div")).addClass("shinyPanelLeftShine").appendTo(this.container);
    this.content = $(document.createElement("div")).addClass("shinyPanelContent").appendTo(this.container);

    if (!css) css = {};
    if (!attributes) attributes = {};

    this.css = css;
    $(this.container).css(this.css);

    this.title = attributes["title"];
    $(this.titleBar).html(this.title);
}

Jetzt kann ich dieses Objekt instanziieren und über Folgendes an den Körper anhängen:

var panel = new ShinyPanel({position:"absolute", top:"25%", width:"300px", height:"200px"}, {title:"Test"});
$("body").append(panel.container);

Meine Frage ist, gibt es eine Möglichkeit für mich, das Objekt selbst zu einem Div zu machen, wodurch die Notwendigkeit eines "Container" -Div beseitigt wird? Dann könnte ich einfach anrufen$("body").append(panel);.

Es ist nicht so schlimm für mich, die Container-Abteilung dort zu haben, es ist eher für mich ... weil ich lernen möchte, wie man Dinge richtig macht.

Ich habe es versuchtthis = document.createElement("div");, aber ich habe einen Fehler bekommen:invalid assignment left-hand side.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage