3

この問題はまだ FF と Chrome にのみ存在します。HughesはIE用に修正しました

私は現在、視差効果を使用して 3D 効果を偽造する Web サイトに取り組んでいます。私が使用しているスクリプトはsmart3d(jQueryプラグイン)です。

私が作成した最初のスライドは正常に動作します (ただし、幅 100% は何らかの理由で実際には 100% ではありません)。複製すると、ホバリング時にさらに右側にシフトします。もう一度複製すると...さらにシフトします。

問題が何であるかを見つけることができないので、皆さんに助けを求めることにしました。ここで問題を確認できます: http://basenharald.nl/3d/

いくつかのアイテムにボーダーを付けて、LI意味が明確になるようにしています。

あなたたちが助けてくれることを願っています。

ところで:px代わりに使用すると同じ問題が発生する%ので、それは答えではありません。

4

2 に答える 2

4

これは smart3d のバグです。垂直スクロールは正しく調整されますが、水平スクロールは考慮されません。関連するコードを見つけました。修正方法については、こちらをご覧ください。

ファイル jquery.smart3d.js を開くと、69 行目あたりで、mousemove 関数を smart3d コンテナーにバインドする場所が見つかります。

thisObj.mousemove(function(e){
    if (settings['horizontal']) {
        var x = e.clientX - thisObj.offset().left;
        ...

垂直スクロールの場合と同様に、水平スクロールを考慮する必要があります。関数を次のように変更します。

thisObj.mousemove(function(e){
    if (settings['horizontal']) {
        var st = $('html').scrollLeft();
        var x = e.clientX - thisObj.offset().left + st;
        ...

ファイルを保存し、ページをリロードします。

スクリプトが垂直オフセットを処理するのと同じ方法であるため、これで問題が解決するはずです。私自身は試していませんが!

于 2011-07-07T15:27:58.713 に答える
0

私は著者にメールを送り、しばらくして彼はそれを修正してくれました。新しいダウンロードにはこの問題はありません: http://4coder.info/en/code/jquery-plugins/smart3d/download/

于 2011-09-08T13:22:30.637 に答える