Simplicityの特徴 › フォーラム › Simplicity2に関する話題何でも › javascript.js スクロールでトップへ戻るの件で
-
投稿者投稿
-
-
2016年1月2日 5:46 PM #35244
Hidekichi
ゲストサンプル: スクロールサンプル | jsFiddle
色々といじくってて知ったんですけれども、オリジナルのスクロールへ戻るの処理でanimationを利用している所の話で、
$(“html,body”)とセレクタが指定してあるわけですが、この場合、callbackを入れるとそれぞれに2回処理が実行されたりしたりなんちゃったりで、チラツキが出ることがあるそうです。
まぁ動作自体はするんですけれども。で、それを回避するには、そのブラウザがhtmlを利用しているのか、bodyを利用しているのを調べる必要があるらしく、だいたいの所、IEとfirefoxはhtml、それ以外はbodyらしいんですが、どんなブラウザを利用しているのかわからないのと、バージョンによって変わるかも知れないということから、どのようにしてブラウザを判別するべきかというのを色々と試行錯誤する必要があるようで、色んな方法がありそうです。
そもそもがcallbackを入れないのでアレなんですが、つまりは、
$(html,body).animate({ scrollTop: 1 },{ duration: 800, complete: function(){ $(#site-title).text(トップへ戻ったぜ); } });仮にこういうのがあった場合、トップへ戻ったぜが2回呼び出されるみたいです。試してないんで知らないですけども。ただ、何かしら動作がおかしいのは、ちょっと今色々いじくってるやつでも感じたので、使う使わないは別にしても気にしておく必要がある部分かも知れません。
またscrollTopを0にした場合、一部アンドロイドあたりのブラウザで、何かしら問題があるらしく、1にしておくと良いそうな。タイトル上にpaddingとかが入っていないと、その1pxでもズレていると気づかれる部分ですが、まぁそこらは何かしら問題が起こるよりは良いかも知れません。起こる気配をPCしか使わないので感じませんけれどもね(笑)
正式版ではないにしろバージョンも変わったことですし、徐々に修正すべき所を修正していくのが良いかなぁと思った次第です。
-
2016年1月2日 6:08 PM #35250
わいひらキーマスター1にしても、少しずれるだけで、特に問題はないと思うので、これで不具合が出なくなるのなら、1にしておこうと思います。
手元のファイルを修正しておきました。 -
2016年1月3日 1:00 AM #35257
Hidekichi
ゲストトップへ戻る際の動作を生のjavascriptでやる場合の実働サンプル
サンプル: スクロール部分のjavascript バージョン | jsFiddle
jQueryのanimationを使わないのでバグが潜みづらいのではないかと思います。
詳細: CSS Transitionを使ったスムーズにスクロールしてトップに戻る機能 | Hail2u.net -
2016年1月3日 11:14 AM #35264
わいひらキーマスターとりあえずは、昨日修正したものを公開して様子を見てからにしようと思います。
-
-
投稿者投稿
- このトピックに返信するにはログインが必要です。