2017-10-06 16 views
0

角度4アプリケーション内でサイズを変更しようとしました。私はイベントリサイズを使用してこれを行うと、デスクトップデバイスのブラウザで正常に動作します。次の行は、サイズが変更された場合に通知する必要があるAngularコンポーネントのコンストラクタ内で呼び出されます。モバイルでのサイズ変更イベントがありません

const onResize = (e) => { ... }; 
window.addEventListener('resize', onResize, false); 

しかし、それは、モバイルデバイス(Androidの4タブとAndroid 6電話で確認)に失敗しました。ズーミングやテキストサイズの変更でも、この関数の呼び出しはありません。多分このlinkが問題の原因かもしれません。

しかし、それはどのように解決できますか?

+0

してみてください。 サイズに基づいてデータを設定する場合は、 'window.screen.width'またはheightを使用してみてください。 – Swoox

+0

私は電話で 'window.screen.width'と' window.innerWidth'をチェックしました。ブラウザでText-sizeを変更すると、両方の値が変更されます。ズームしてもこれらの値は変更されません。だからあなたはそれが変わっていないと思うのは間違っています。 –

答えて

2

ユーザーが携帯電話を横向きまたは縦向きに回転させるイベントを探している場合。ここでは、次のとおりです。あなたがズームや一部のタッチイベントを探しているならonOrientationChange
、これは、それが変更されないように、サイズが電話に固定されている原因であるtouchy

+0

イベント「orientationchange」が検出され、電話の回転を処理するのに役立ちます。イベント「touchy」は、ダウンしたいと望むときに検出されるが、ズームには検出されない。テキストサイズを変更しても、これらのイベントは発生しません。だから私は、サイズに影響を与えるすべての変更を検出するために、誰かが私の問題の解決策を持っていることを願っています。 –

関連する問題