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
.