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

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

新規登録して質問してみよう
ただいま回答率
85.48%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

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

jQuery

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

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

3回答

3574閲覧

WEBページスクロール時に左右からメッセージをピョコっと出す

fama

総合スコア105

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

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

jQuery

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

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

1クリップ

投稿2016/02/23 22:34

Webページを下にスクロールすると設定した箇所で右からピョコ次は左からピョコと吹き出しのようなメッセージBOXを出したいのですが、これはどのようにすると実装出来ますでしょうか?

技術的にこのようにすれば良いという回答やわかりやすいアドバイスを受け付けております。

また、サンプルサイトなどあれば教えて頂けると嬉しく思います。

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

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

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

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

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

guest

回答3

0

・最初は要素は画面外に表示しておく
・一定量スクロールしたら、
・要素にcssアニメーションで左右から出てくるようにする

という流れになるかと。下記、ざっくりですが。

Javascript

1$(window).on('scroll', function(e){ <<< スクロールしたら 2 var scrollTop = $(window).scrollTop(); <<< スクロール量 3 if (scrollTop > threshold) { <<< スクロール量が一定値(例えばwindow.innerHeight/2)より超えたら 4 $('#box01').addClass('anim'); <<< 要素にクラスをaddする 5 } 6});

css

1#box01 { 2 position: relative; 3 top: 800px; 4 right: -400px; <<< 最初は画面外にしておく 5 height: 100px; 6 background: #00f; 7 color: #fff; 8} 9#box01.anim { 10 right: 0; <<< 画面内にする 11 transition: .5s all; <<< アニメーションさせる 12}

投稿2016/02/24 03:05

ikki57

総合スコア290

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

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

0

jQueryで言うと、

  • イベントのきっかけ:スクロール
  • イベント時にやること:スクロール位置(scrollTop)と動かす対象の位置(offset().top)の算出。

および、それらの位置関係を元にした、対象を動かす条件との比較。
offset().topだけでは、コンテンツの天辺の位置しか分からないので、コンテンツの底の位置が欲しい場合は、offset().top + コンテンツの高さ$('.contents').height()で算出できます。

  • 条件を満たした時に実行すること:コンテンツをanimate等で動かしたり、動きに必要なクラスの付け外しを行う。

おおよそこんな感じです。

投稿2016/02/24 01:06

編集2016/02/24 01:06
yamato_hikawa

総合スコア2092

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

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

0

スクロール量が表示ブラウザサイズの3/4を越えたら、右からピョコ、4/5を越えたら左からピョコ、
ピョコっと出た奴は、自分の表示が完了してから2秒後にフェードアウトしつつ画面外にニョロっと消える。

こんな感じ?

スクロールイベントをトリガーにして、座標計算して範囲チェックして、ピョコっと出てくる物体をアニメーションさせればオッケーです。
こういうのを紹介してるhpは知りません。

何ができなくて、何ができるのか自分流のコードを質問欄に追加してくれると、もう少し気が利いたアドバイスができるかもしれません。jquery を使うのか、cssだけで何とかしたいのか、ハイブリッドでもオッケーなのか、情報が必要です。

投稿2016/02/24 00:44

ipadcaron

総合スコア1693

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問