2017-01-17 11 views
3

typescriptのHTML要素の高さを取得して更新する方法を教えてください。div.classの高さを取得および設定する方法

document.getElementsByClassName('height').style.height = childHeight; 

は機能しません。私はここで

プロパティ「スタイル」が存在しないタイプの「HtmlCollectionOf <要素>」

答えて

1

一つの問題はgetElementsByClassNameクラスheightを持つ要素の配列を返すことがあります取得します。 style methodを適用するには、1つの要素が必要です。

このコードは、最初のそのような要素に10pxの高さを適用します。

document.getElementsByClassName('height')[0].style.height = '10px'; 
+0

私はjavascriptでtypescriptで動作していないすべての方法を試してみました。タイポスクリプトの高さを取得して更新する方法を教えてください。 –

+0

var result = document.getElementsByClassName( 'height')[0]; var wrappedResult = angle.element(result); wrappedResult.css( 'height'、 '100px'); –

1

まず、あなたが後にあるコード:次に

const cnElems = document.getElementsByClassName("cn"); 

for (let i = 0; i < cnElems.length; i++) { 
    const e = cnElems[i]; 
    if (e instanceof HTMLElement) { 
     e.style.height = "10px"; 
    } 
} 

、説明...二つの主要な障害があります。ここに:

HTMLCollection<Element>
を返し getElementsByClassName
  • 210より古いターゲットとブラウザの場合は、このコレクションを古い学校のforループで列挙する必要があります。より新しいターゲット(> = ES6)およびブラウザについては、this answerを参照してください。
  • コレクションの要素はElementですが、styleHTMLElementに定義されています。幸いにも、TSはtype guardの範囲内の型を自動的に絞り込みます。
関連する問題