私のasp.netアプリケーションには、ヘッダーを持つページがあり、ページの本文には、人が選択できるアイテムが表示されます。誰かがアイテムを選択すると、本文の右側に iframe が表示され、選択したアイテムの詳細が表示されます。iframe のサイズと位置は、画面のサイズを使用して設定されます。すべてのデスクトップ ブラウザで、以下の JavaScript を使用してこれを修正できます。
<script type="text/javascript">
window.onscroll = scroll;
</script>
ここにJavaScript関数スクロールがあります
function scroll() {
var divT = document.getElementById('searchframe');
var divD = document.getElementById('detailframe');
if (document.body.scrollTop > 80) {
divT.style.top = document.body.scrollTop
divD.style.top = document.body.scrollTop
document.getElementById('detailframe').height = '100%';
}
if (document.body.scrollTop == 0) {
divT.style.top = 75
divD.style.top = 75
}
}
http://code.google.com/p/ibbdemo2/ - Adobe Air iPad シミュレーターを使用してテストする場合、スクロール機能は呼び出されません 。スクロール機能を除いて、他のすべてのブラウザーやこのシミュレーターでもポップアップするアラートを配置することで、これを伝えることができました。他のブラウザーでは、window.onclick 行にアラートを配置するとアラートが表示されますが、サファリ モバイルではアラートは表示されません。つまり、window.onscroll イベントはトリガーされていないように見えます。ご協力ありがとうございました。
編集 - モバイルサファリを除くすべてのブラウザで、以下の行のいずれかを使用してスクロールイベントをキャプチャすることもできます
window.onscroll = scroll;
document.onscroll = scroll;
document.addEventListener("scroll", scroll, false);