質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
スクロール

スクロールとは、ディスプレイスクリーン上において連続的にコンテンツが滑っていくことを指します。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

解決済

3回答

4043閲覧

スマホでjqueryでスクロール位置を設定する方法

syudee

総合スコア7

スクロール

スクロールとは、ディスプレイスクリーン上において連続的にコンテンツが滑っていくことを指します。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2015/07/22 15:58

編集2015/07/24 14:01

Jqueryで指定位置までスクロールさせるという動作を実現したいのですが、
以下の記述だとスマホからでは動作しないようです。

$('html,body').animate({ scrollTop:1000}, 'slow');

スマホで上記と同等の動きをさせる方法を教えていただけないでしょうか。

-- 追記 ----−
回答してくださった方たちの言う通り、
スマホでも上記方法でスクロールはさせられました。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

問題なさそうですが、一応下記で正常に動きます!!

Javascript

1;$(function() 2{ 3 function scrollToTag(selid) 4 { 5 var tag = $(selid); 6 if( tag.offset() !== null) 7 { 8 var pos = tag.offset().top; 9 $("html, body").animate({scrollTop:pos}, 1000, "swing"); 10 } 11 } 12 window.load = scrollToTag('#go'); 13});

投稿2015/07/23 03:58

NIA

総合スコア181

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

ina

2015/07/23 04:25 編集

間違えてコメントしました。すみません。
syudee

2015/07/23 13:17

ソースをご提示いただいてありがとうございます。 私のところでは動きませんでしたが、animateの記述が誤っていないという事が わかっただけでも少し前進です。 ありがとうございます。
guest

0

ベストアンサー

通常は書かれているやり方でできると思います。
何か別のところに問題があるのではないでしょうか。

Firebugなどでエラーが出てないか確認されてはどうでしょう?

投稿2015/07/23 03:46

ina

総合スコア127

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

syudee

2015/07/23 13:18

iosシュミレータとsafariでデバッガ確認をしたところ、 スクロールはしませんが特にエラーにもなっていませんでした。 どこでscrollTopを取っても0のままなので、おっしゃる通り他に何か問題があるのだと思います。 もう少し調べてみます。 モバイルサファリでデバッガを使うという発想がなかったので非常に助かりました。 ありがとうございます。
ina

2015/07/23 14:09

iScrollなどのページを疑似的にスクロールさせるプラグインを使っているとかはないでしょうか?
syudee

2015/07/23 22:28

iScrollは使用してませんが、パララックス効果を作るためにskrollrは使用しています。
ina

2015/07/24 00:30 編集

それの影響かもしれないですね。 scrollrのサイトを見るとスクロールさせるためのメソッドがあるみたいなので、それを使ってみるのはどうでしょうか? https://github.com/Prinzhorn/skrollr/blob/master/README.md たぶんsetScrollTopかanimateToだと思います。 試してないので、違ってたらすみません。
syudee

2015/07/24 13:57

用意されていたメソッドでスクロールさせる事ができました! 英語がビタイチ読めないので自分ではたどり着けなかったと思います。 本当に助かりました。ありがとうございました。 ちなみに、翻訳されてる方がいたので載せておきます。 https://www.flying-h.co.jp/blog/2014/09/skrollr-0626---jqueryparallax.php
ina

2015/07/24 14:36

翻訳のリンクありがとうございます。 解決されたようで良かったです。
guest

0

smooth scroll を使えば実現できる気がします。

ttp://blog.webcreativepark.net/2007/07/12-143406.html

投稿2015/07/22 21:41

yu-ri

総合スコア634

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

syudee

2015/07/23 13:17

確かにsmoothScrollで検索して、そこにあったサンプルはスマホでも動きました。 ただ、同等の事をやってるはずなのに私のところでは動きません・・・ まだ解決策の見当はついてないですが、問題の絞り込みは行えました。 ありがとうございます。
yu-ri

2015/07/23 15:41

上記のサイトのJSなら、読み込むだけでjQuery無しで動くはずなんですが…おかしいですね。 他のライブラリとバッティングしてたりしませんか?
syudee

2015/07/24 13:54

skrollrとバッティング(?)していました。 ご回答ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問