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

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

新規登録して質問してみよう
ただいま回答率
85.48%
スライダー

GUIのグラフィカルウィジェットのひとつです。インジケーターを動かすことで値を調節可能とします。

jQuery

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

iPhone

iPhoneとは、アップル社が開発・販売しているスマートフォンです。 同社のデジタルオーディオプレーヤーiPodの機能、電話機能、インターネットやメールなどのWeb通信機能の3つをドッキングした機器です。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

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

Q&A

0回答

2069閲覧

iPhone実機でslickが正常にフェード、スライドしない

masaki822

総合スコア5

スライダー

GUIのグラフィカルウィジェットのひとつです。インジケーターを動かすことで値を調節可能とします。

jQuery

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

iPhone

iPhoneとは、アップル社が開発・販売しているスマートフォンです。 同社のデジタルオーディオプレーヤーiPodの機能、電話機能、インターネットやメールなどのWeb通信機能の3つをドッキングした機器です。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

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

0グッド

0クリップ

投稿2020/01/29 07:21

編集2020/01/30 00:56

発生している問題

slickを実装したところ、PCブラウザ上ではきちんと動作するが、
iphone実機だと画像切り替え時にフェードしない、また、画像をタッチするとスライドショーが停止してしまいます。
これを改善したい

該当のソースコード

HTML

1<ul id="slider"> 2<li class="slide-item"><img data-lazy="https://www.jungleocean.com/demo/jquery-slick/images/1.jpg" alt="画像"></li> 3<li class="slide-item"><img data-lazy="https://www.jungleocean.com/demo/jquery-slick/images/2.jpg" alt="画像"></li> 4<li class="slide-item"><img data-lazy="https://www.jungleocean.com/demo/jquery-slick/images/3.jpg" alt="画像"></li> 5<li class="slide-item"><img data-lazy="https://www.jungleocean.com/demo/jquery-slick/images/4.jpg" alt="画像"></li> 6<li class="slide-item"><img data-lazy="https://www.jungleocean.com/demo/jquery-slick/images/5.jpg" alt="画像"></li> 7<li class="slide-item"><img data-lazy="https://www.jungleocean.com/demo/jquery-slick/images/6.jpg" alt="画像"></li> 8</ul> 9<ul id="thumbnail-list"> 10<li class="thumbnail-item"><img src="https://www.jungleocean.com/demo/jquery-slick/images/1.jpg" alt="画像"></li> 11<li class="thumbnail-item"><img src="https://www.jungleocean.com/demo/jquery-slick/images/2.jpg" alt="画像"></li> 12<li class="thumbnail-item"><img src="https://www.jungleocean.com/demo/jquery-slick/images/3.jpg" alt="画像"></li> 13<li class="thumbnail-item"><img src="https://www.jungleocean.com/demo/jquery-slick/images/4.jpg" alt="画像"></li> 14<li class="thumbnail-item"><img src="https://www.jungleocean.com/demo/jquery-slick/images/5.jpg" alt="画像"></li> 15<li class="thumbnail-item"><img src="https://www.jungleocean.com/demo/jquery-slick/images/6.jpg" alt="画像"></li> 16</ul>

CSS

1#slider { 2width: 95%; 3margin: 0 auto 30px; 4} 5 6.slide-item img { 7width: 100%; 8} 9 10#thumbnail-list { 11max-width: 95%; 12margin: 0 auto; 13display: flex; 14justify-content: space-between; 15flex-wrap: wrap; 16} 17 18.thumbnail-item { 19flex: 0 1 12%; 20margin-bottom: 10px; 21box-sizing: border-box; 22position: relative; 23} 24 25.thumbnail-item:after { 26content: ''; 27background-color: rgba(0, 0, 0, 0.5); 28position: absolute; 29display: block; 30top: 0; 31left: 0; 32width: 100%; 33height: 90%; 34opacity: 1; 35transition: .3s opacity linear; 36} 37 38.thumbnail-item.thumbnail-current:after { 39opacity: 0; 40} 41 42.thumbnail-item img { 43width: 100%; 44margin: 0 auto; 45} 46 47@media screen and (max-width: 640px){ 48#slider { 49margin: 0 auto 10px; 50} 51 52.thumbnail-item:after { 53height: 80%; 54 } 55}

jquery

1<script type="text/javascript"> 2$(function(){ 3var slider = "#slider"; 4var thumbnailItem = "#thumbnail-list .thumbnail-item"; 5 6$(thumbnailItem).each(function(){ 7var index = $(thumbnailItem).index(this); 8$(this).attr("data-index",index); 9}); 10 11$(slider).on('init',function(slick){ 12var index = $(".slide-item.slick-slide.slick-current").attr("data-slick-index"); 13$(thumbnailItem+'[data-index="'+index+'"]').addClass("thumbnail-current"); 14}); 15 16$(slider).slick({ 17autoplay: true, 18arrows: false, 19fade: true, 20waitForAnimate: false, 21pauseOnFocus: false, 22pauseOnHover: false, 23pauseOnDotsHover: false 24}); 25 26$(thumbnailItem).on('click',function(){ 27var index = $(this).attr("data-index"); 28$(slider).slick("slickGoTo",index,false); 29}); 30 31$(slider).on('beforeChange',function(event,slick, currentSlide,nextSlide){ 32$(thumbnailItem).each(function(){ 33$(this).removeClass("thumbnail-current"); 34}); 35$(thumbnailItem+'[data-index="'+nextSlide+'"]').addClass("thumbnail-current"); 36}); 37}); 38</script>

試したこと

オプションを色々と試しましたが解決には至りませんでした。

【追記】
フェードしないのはchromeだけのようです。safariだとうまくフェードしましたが、やはり画像をタッチするとautoplayが停止してしまいます。

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

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

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

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

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

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

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

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

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問