ネイティブ HTML テーブルを拡張することは可能ですか?
C# の例:public class: htmltable{}
または次のようなもの:
HTMLTable.prototype.myType=function(){
this.clss='myClass';
this.setAttribute('class',this.clss);
}
ネイティブ HTML テーブルを拡張することは可能ですか?
C# の例:public class: htmltable{}
または次のようなもの:
HTMLTable.prototype.myType=function(){
this.clss='myClass';
this.setAttribute('class',this.clss);
}
ブラウザがDOM要素の継承スキームを実装している場合、通常はそのスキームに従ってそれらを拡張できます。最近のほとんどのブラウザは、ECMA-262と一貫性のあるプロトタイプの継承を実装していますが、次の理由で使用しないでください。
Prototype.jsは、それをサポートするUAでDOM要素の継承を使用し、サポートしない場合はDOM要素自体を「拡張」するフォールバックを使用します。上記の理由により、最近その戦略を放棄しました。また、エラーが発生しやすく、低速でした。
立面図であるオンラインCADプログラムを構築しています。立面図には、ドア、窓、およびベイを分割する水平線を含むベイがあります。テーブルを使用することは、「ブラウザがキャンバスとともにワーカーとローカル ストレージの実装を開始するまで」、この状況に最適です。
各ベイのストレージに配列を使用しています。つまり、薄暗い、水平数、ドアまたは窓の数です。したがって、サイズ変更または何かが発生した場合、ベイの配列をループして、必要に応じてすべてのプロパティをリセットする必要があります。次に、表示するために実際の td を更新する必要があります。基本的に、コアで更新して UI に戻すと、更新された情報を更新するために必要なことは何でも実行します。
これで遠くに行く前に、htmltdを拡張できないことを確認していました。配列を廃止するのはいいことだと思っていましたが、それも最善の方法ではないかもしれませんが、決してわからないようです。;)
以下のコードのようなものは、私が求めていたものです。
this.myWidth;
var bays = this.rows[0].cells, len=bays.length, bay;
for(i=0; i< len;i++){
this.myWidth = someThingCalculated from a parameter;
bay = bays[i];
bay.style.width= ((this.myWidth / elevationWidth) * 100)) + %;
};