水平スクロールに基づいて再配置される (動的に追加された) 要素を取得しました。つまり、画面外に移動できます。その要素に付随して、画面外に出てはならず、画面上にとどまらなければならない別の要素があります。だから私の考えは、スクロールするたびに要素の位置を要求するイベントハンドラーを使用することでした。position-left 属性が特定の数値を下回ると、添付された要素の位置が変更されます。
この種の要素はご存知のとおり、特定のポイントまでスクロールし、その後位置が固定されているように見えるメニュー/ナビゲーションのようなものです。
これを試してみたのですが、要素がjavascriptで追加されているためか、うまくいきません。私も試しlive("scroll"..
ましたが、それもうまくいきませんでした。
$(window).scroll(function(ev) {
alert($("#scrElem").position().left);
alert("work");
if ($("#scrElem").position().left >= 203) {
$("#scrElem .attElem").css("left", ($("#scrElem").position().left - 203) + "px");
};
});
編集:
これが役立つかもしれません:私は tinyscrollbar プラグインを使用しています。基本的に、このプラグインはスクロール時にイベントを発生させます。それが私が望んでいることです、私は彼がどこでそれをしたかさえ見ました:
oWrapper[0].addEventListener( 'DOMMouseScroll', wheel, false );
oWrapper[0].addEventListener( 'mousewheel', wheel, false );
oWrapper[0].addEventListener( 'MozMousePixelScroll', function( event ){
event.preventDefault();
}, false);