私のページには Flash 要素があります。Flash は一般に非常にデリケートなため、整数のピクセル値に配置する必要があります (詳細については、Flash ウェブカメラ アクセス リクエスト プロンプトが応答しないを参照してください)。
これを達成するには、 を でラップしobject
、div
を設定position:absolute
し、object
jQuery を使用して を設定left
し、含む をtop
丸めます。それは一口でした。ここにコード形式があります:offset
div
<div id="wrapper">
<object id="flash" blah style="position:absolute">
<!-- blah -->
</object>
</div>
<script>
function update(){
var p=$('#wrapper').offset();
$('#flash').css({'left':Math.round(p.left),'top':Math.round(p.top)});
}
$(document).ready(function(){
$(window).resize(update);
update();
});
</script>
そして、それはすべてうまく機能します(上記のコードに間違いがある場合、それはそれを削減しただけです)
これにより、ブラウザーのサイズが変更されたときに位置が更新されます。JavaScript によって位置が変更されたときに位置を更新するのは簡単ですが、ページは CSS を使用してtransition-duration
一部の変更をアニメーション化します。どうすればこれを検出できますか? 少なくとも、オブジェクトに影響を与える遷移がいつ発生しているかを検出し、いつ停止するかを知りたいと思います。理想的には、動きをキャッチする方法を知りたいです (たとえば、フォント サイズの変更や画像の読み込みによって引き起こされる)。