JavaScriptで簡単なHTMLタグエンジンを作成しようとしています。この考え方は、関数名としてタグ名を使用することですが、関数を実装する必要はありません。 HTML
というオブジェクト内に存在すると仮定します。JavaScriptオブジェクトの動的メソッド
それは次のようなものになります。私は、このように関数を実行したいと思います。本質的に
function create_and_append_html_element(params) {
var attributes = params.attr;
var tag = params.tag;
var target = params.target;
var content = params.content;
var element = document.createElement(tag);
if (attributes) $(element).attr(attributes);
if (content) $(element).html(content);
if (target) $(target).append(element);
return element;
}
:私は今のところ持っている非常に基本的な実装がこれです
HTML.h1({class:"uberheadline"}, "Hello World");
HTML.div({id:"megabox"});
をtag
変数を指定する必要はありません。出来ますか?もしそうなら、どこで答えを探すのがよいでしょうか?
基本的にドット演算子のオーバーロードを求めていますが、標準のJavascriptでは不可能です。それを行うためのいくつかのハッキーな方法がある場合は、受け入れ可能なタグの小さなセットをどこかに定義するよりも悪くなるでしょう。 – Triptych
偉大なHTMLタグエンジンは、有効なHTMLを作成する必要があります。つまり、とにかに、異なるタグに許可された属性のリストが必要です。その後、トリプティックのソリューションのようなものを使用すると、そのトリックを行う必要があります。 – zatatatata
は真ですが、この場合は有効なタグに限定されません。タグと属性を正しく選択するのは開発者次第です。すべてを事前定義することは、自動化とコードの一貫性のために避けたいものです。ファンクションはPerlコードベース内に既に存在しているので、JavaScriptを使用して同じように動作させたいと考えています。 –