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

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

新規登録して質問してみよう
ただいま回答率
85.35%
jQueryプラグイン

jQueryの拡張機能。 様々な種類があり、その数は膨大です。公開済みのプラグインの他にも、自作することもできます。 jQueryで利用できるようにしておくだけで、導入およびカスタマイズが比較的容易に行なえます。

JavaScript

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

jQuery

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

HTML

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

Q&A

解決済

1回答

3542閲覧

別ページからの遷移時にslickの特定のスライドをアクティブにする方法

yukalino

総合スコア4

jQueryプラグイン

jQueryの拡張機能。 様々な種類があり、その数は膨大です。公開済みのプラグインの他にも、自作することもできます。 jQueryで利用できるようにしておくだけで、導入およびカスタマイズが比較的容易に行なえます。

JavaScript

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

jQuery

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

HTML

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

0グッド

0クリップ

投稿2021/09/15 14:02

前提・実現したいこと

aaa.html にあるリンクをクリックした際、bbb.html内に複数あるslick(slick_1,slick_2,slick_3...)内の特定のスライド(例:slick_2の3枚目)をアクティブにした上でその位置まで遷移させたいと考えています。

js自体に不慣れなため、どのようにすればいいか皆目検討もつかない状況です。
・slick自体の設置はできております。
・slickGoToが使えそうだとは思うのですが、リンク押下時にcookieを取得し、ページ遷移時にどうやってデータを渡せばいいかがわかりません。

どのようにすればよいかお知恵を貸していただければと思います。

aaa.html

html

1<div> 2 <a href="./bbb.html#slick_2_03">bbb.htmlのslick_2の3枚めに遷移</a> 3</div>

bbb.html

html

1<ul class="slick slick_1"> 2 <li><img src="img01.jpg" alt=""></li> 3 <li><img src="img02.jpg" alt=""></li> 4 <li><img src="img03.jpg" alt=""></li> 5</ul> 6<ul class="slick slick_2"> 7 <li id="slick_2_01"><img src="img01.jpg" alt=""></li> 8 <li id="slick_2_02"><img src="img02.jpg" alt=""></li> 9 <li id="slick_2_03"><img src="img03.jpg" alt=""></li> 10</ul> 11<ul class="slick slick_2"> 12 <li><img src="img01.jpg" alt=""></li> 13 <li><img src="img02.jpg" alt=""></li> 14 <li><img src="img03.jpg" alt=""></li> 15</ul>

bbb.js

js

1(function($) { 2 "use strict"; 3 $(".slick ").slick({ 4 autoplay: false, 5 dots: false, 6 slidesToShow: 1, 7 slidesToScroll: 1 8 }); 9})(jQuery);

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

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

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

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

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

guest

回答1

0

自己解決

自己解決しました。
パラメータに指定したスライド&アンカーを乗せることで想定通りの動作ができました。

aaa.html

html

1 <a href="./slick.html?slidenom=2#slick_2">bbb.htmlのslick_2の3枚めに遷移</a><br> 2 <a href="./slick.html?slidenom=1#slick_3">bbb.htmlのslick_3の2枚めに遷移</a><br> 3 <a href="./slick.html?slidenom=2#slick_1">bbb.htmlのslick_1の3枚めに遷移</a><br> 4 <a href="./slick.html?slidenom=0#slick_2">bbb.htmlのslick_2の1枚めに遷移</a>

bbb.html

html

1 <div id="slick_1" class="slick_box"> 2 <ul class="slick"> 3 <li>一枚目</li> 4 <li>二枚目</li> 5 <li>三枚目</li> 6 </ul> 7 </div> 8 <div id="slick_2" class="slick_box"> 9 <ul class="slick"> 10 <li>一枚目</li> 11 <li>二枚目</li> 12 <li>三枚目</li> 13 </ul> 14 </div> 15 <div id="slick_3" class="slick_box"> 16 <ul class="slick"> 17 <li>一枚目</li> 18 <li>二枚目</li> 19 <li>三枚目</li> 20 </ul> 21 </div> 22 23 <p class="linkbtn"></p>

bbb.js

js

1$(function(){ 2 //slider 3 $(".slick ").slick({ 4 autoplay: false, 5 dots: false, 6 arrows:true, 7 centerMode: true, 8 centerPadding: '10%', 9 slidesToShow: 1, 10 slidesToScroll: 1 11 }); 12 13 //パラメータ取得 14 function getParam(name, url) { 15 if (!url) url = window.location.href; 16 name = name.replace(/[[]]/g, "\$&"); 17 var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"), 18 results = regex.exec(url); 19 if (!results) return null; 20 if (!results[2]) return ''; 21 return decodeURIComponent(results[2].replace(/+/g, " ")); 22 } 23 24 var slidenom = getParam('slidenom'); //スライドのn番目を取得 25 var urlHashLink = location.hash + ' .slick'; //対象のslickを選択+slickGoToの動く先を指定 26 27 $('.linkbtn').on('click', function() { 28 $(urlHashLink).slick('slickGoTo', slidenom, true); //指定した変数を格納 29 }); 30 31 //読み込み時にトリガーが発火 32 $(document).ready(function(){ 33 $('.linkbtn').trigger('click'); 34 $('.slick').slick(); 35 }); 36

投稿2021/09/20 16:56

yukalino

総合スコア4

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問