0

プロジェクトでstellar.jsを使用していました。
質問があります- 「リアルタイムのサイズ変更」要件の下にあります(ページをリロードしないでください)。サイズ変更機能を使用して、以下の水平スクロールの新しい位置LEFTを計算すると:

$(window).resize(function(){
    var newPos = element.position().left*100; //Get NEW Position ...
    element.css("left", newPos);        //It's not working ...
});

「data-stellar-ratio」の要素は上書きされません。
この問題を解決するにはどうすればよいですか?

ご協力いただきありがとうございます。

以下の要件の下で
->ブラウザーのサイズを変更すると、要素の位置がリアルタイムで再計算されます(ページのリロードなし)
->したがって、位置を再計算し、新しい位置を要素に上書きします。
->しかし、 data-stellar-ratio 属性を使用する要素は、新しい位置を上書きできません。(コメントの例)
ここに私の問題があります。再び助けてくれてありがとう。

4

2 に答える 2

0



stellar.js の _repositionElements: function()を参照してください

if (this.options.horizontalScrolling) {
 var bSize = this.options.refWidth,bResize = $(window).width(),bRatio = this.options.formula(bResize, bSize);

newPositionLeft = (scrollLeft + particle.horizontalOffset + this.viewportOffsetLeft + particle.startingPositionLeft - particle.startingOffsetLeft + particle.parentOffsetLeft) * -(particle.stellarRatio + fixedRatioOffset - 1) + particle.startingPositionLeft; 

newPositionLeft *= bRatio;   //all element reposition in here

newOffsetLeft = newPositionLeft - particle.startingPositionLeft + particle.startingOffsetLeft;

}

bSize = 前にブラウザの
サイズを変更 bResize = 後にブラウザのサイズを
変更 bRatio = サイズ変更の比率
newPositionLfet = すべての要素の位置を左に

newPositionTop = newPositionLeftと同じ

于 2013-11-05T07:37:51.053 に答える
0

あなたの質問は非常に不明確です。しかし、data-stellar-ratio 属性を変更したい場合は、次のようにします。

element.attr('data-stellar-ratio', 2);

elementjQuery オブジェクトでなければなりません。

于 2013-10-17T15:09:02.550 に答える