mytag

はじめに

マイタグは簡易的なコンポーネントシステムです。IE11でも動作します

データバインドやバーチャルDOMみたいな高度な機能はありませんが、その代わりに簡単に利用できるようになってます

ダウンロードと設定

ダウンロード: mytag.js

設定: mytag.jsを開いてmytag.urlの値を設定します。

設定例

呼び出し側

mytag.jsを読み込みます。どこに記述してもOK

コンポーネントを貼り付けたい場所に、my-から始まるタグを書きます。

呼び出し側での作業は以上です。
これで設定したURLからマイタグファイルがダウンロードされ、その内容が本ドキュメントに追加されます

ダウンロードは初回のみで2回目以降はキャッシュされます

呼び出される側

マイタグ名.htmlファイルを作成します。普通のHTMLファイルです。

このファイルには<style>タグ1つと<my-tag>タグ1つを記述します。
呼び出し側からはこの2つのタグを取得します。それ以外は取得しません

my-sample.html

マイタグファイルを作成したら、設定したURLに配置してください

基本的なタグが書かれていませんが、このHTMLはvalidで標準に準拠しています

styleタグについての諸仕様

マイタグファイル内における、styleタグについての説明です

CSS解析例

変換ルールは次の2点です

  1. 全行において"my-tag"という文字列が、現在のマイタグ名に変換されます
  2. セレクタ開始行において、現在のマイタグ名から始まっていなければ、現在のマイタグ名+空白が付与されます

scriptタグについての諸仕様

マイタグファイル内における、scriptタグについての説明です

インライン例

属性を利用したデータ授受

コンポーネントにおいてデータを授受する方法はいろいろありますが、属性を利用するのが最も標準的でしょう

呼び出し側
呼び出される側

その他

キャッシュ

マイタグファイルが増えると読み込みが重たくなりますが、キャッシュを利用すると読み込まずに済むようになります

mytag-setting.js

キャッシュ設定をHTML内に記述すると、"</script>"という文字列があった場合にブラウザが誤判定するので、外部jsファイルに書いてください。
CSS解析のためファイルの改行コードは保持してください。改行コードを\nに変換したり、"'には\を付けてエスケープする必要があります