私のモバイルプロジェクトの中には、resizeイベントにイベントリスナーを使用しています。デバイスがポートレート/ランドスケープ(またはデスクトップウィンドウのサイズが変更された)からシフトすると、イベントが呼び出され、エレメントの高さと幅を手動で設定できます。ここで
は、私が使用しているものの短い例です:
window.addEventListener('resize', resizetick, false);
<...>
function resizetick(e) {
if(this.resizet)
clearTimeout(this.resizet);
resizet = setTimeout(resizecallback, 100);
}
<...>
function resizecallback() {
<if new resolution then resize elements here>
}
のsetTimeout /てclearTimeout背後にある目的は、複数のサイズ変更を防ぐためです。デスクトップブラウザのイベントは、サイズ変更中に継続的に発生し、モバイルユーザーは誤ってデバイスの方向を変えることがあります。私は繰り返しコンテンツのサイズを変更しないようにしたい。
resize()とresizecallback()をバインドするか、別の方法で処理する必要があります。私は、実用的なコードを切り取って貼り付けるプロジェクトを手元に持っていません - 残念です。 :\
本当に有用な情報です。ありがとうございます。私はそれを介して作業し、それが来るのを見るつもりです。ありがとう。 – Andy