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

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

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

jQuery UI はjQuery公式のインターフェースライブラリであり、対話型のウェブアプリケーションを作る際に役立ちます。

スライダー

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

jQuery

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

HTML

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

Q&A

1回答

2631閲覧

jQuery 「 ~ is not function」メソッドが使用できない。

ixa

総合スコア5

jQuery UI

jQuery UI はjQuery公式のインターフェースライブラリであり、対話型のウェブアプリケーションを作る際に役立ちます。

スライダー

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

jQuery

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

HTML

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

0グッド

0クリップ

投稿2019/09/02 05:17

編集2019/09/02 05:19

前提・実現したいこと

先日jQueryでのスライダーの実装を頼まれまして、
過去に実装した経験がなかったので、調査から入り、
色々と試行錯誤していたのですが、
うまくいきません。

発生している問題・エラーメッセージ

Uncaught TypeError: slider.goToNextSlide is not a function

該当のソースコード

html

1//スクリプト(jQuery)読み込み部分 2<script type='text/javascript' src='/script/jquery-1.9.1.min.js'></script> 3<script type="text/javascript"> 4 $(function(){ 5 $('a[href^=#]').click(function(){ 6 var speed = 800; 7 var href= $(this).attr("href"); 8 var target = $(href == "#" || href == "" ? 'html' : href); 9 var position = target.offset().top; 10 $("html, body").animate({scrollTop:position }, speed, "swing"); 11 return false; 12 }); 13 }); 14</script> 15<script type="text/javascript"> 16 $(function() { 17 var pageTop = $('.page_top'); 18 pageTop.hide(); 19 $(window).scroll(function () { 20 if ($(this).scrollTop() > 400) { 21 pageTop.fadeIn(); 22 } else { 23 pageTop.fadeOut(); 24 } 25 }); 26 pageTop.click(function () { 27 $('body, html').animate({scrollTop:0}, 800, 'swing'); 28 return false; 29 }); 30 }); 31</script> 32<script type="text/javascript" src="/script/jquery.inview.js"></script> 33<script type="text/javascript" src="/script/list.js"></script> 34<script type='text/javascript' src='/script/jquery.min.js'></script> 35<script type='text/javascript' src='/script/menu_fix.js'></script> 36<script type="text/javascript" src="/script/jquery-1.8.0.min.js"></script> 37<!--Jqueryを混在させるため以下--> 38<script type="text/javascript"> 39 var $180 = jQuery.noConflict(true); 40 41 (function($){ 42 $(function(){ 43 console.info("jQuery = " + $.fn.jquery); 44 }); 45 })(jQuery); 46 47 (function($){ 48 $(function(){ 49 console.info("$180 = " + $.fn.jquery); 50 }); 51 })($180); 52 (function($){ 53 $(function(){ 54 console.info("$ = " + $.fn.jquery); 55 }); 56 })($); 57</script> 58<script type="text/javascript" src="/script/jquery.bxslider.js"></script> 59

jQuery

1 //スライダー実装部分 2 (function($) { 3 $(document).ready(function () { 4 var slider = $('.bxslider').bxSlider({ 5 easing: 'easeInOutCubic', 6 speed: 1000, 7 pager: false 8 }); 9 $('#next_btn').on('click', function () { 10 slider.goToNextSlide(); 11 }) 12 $('#prev_btn').on('click', function () { 13 slider.goToPrevSlide(); 14 }) 15 }); 16 17 })(jQuery); 18

試したこと

上のソースではbxsliderを利用していますが、
こだわりはありません。
slickでの実装も試みましたが、こちらに関しては、
slickメソッド自体がnot functionと言われてしまい、
何一つ動作しない状態でした。
jqueryの読み込む位置は、スライダースクリプトよりも前になっているので、
その点は問題ないかと考えています。
bxsliderを利用してみたところbxsliderメソッドだけはなぜか機能したので、
とりあえず仮でbxsliderを利用しています。

jqueryの競合による問題であることも想定して、
var $j = jQuery.noConfict()
を利用する方法も試しましたが変化はありませんでした。

スクリプトの読み込みエラーも想定し、
DevToolsのSourcesタブからjsファイルも確認したのですが、
全て問題なく読み込まれていました。

ちなみにbxsliderはbxsliderメソッド以外は何一つ機能しません。
(~ is not functionと言われる)

どちらのスライダーで試しても同じようなエラーが出たため、
スライダープラグインに問題があるのではなく、
根本的に何か問題があるのではないかと思い、
質問させていただいております。

怪しいところなど御座いましたら、ご指摘いただけると幸いです。

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

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

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

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

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

kei344

2019/09/02 05:48

書かれている状況が再現するコード(HTML/CSS/JavaScriptなど)か、再現するURLを質問文に追記されたほうが回答を得やすいと思います。
guest

回答1

0

jqueryを違うバージョンで二重に読み込んでいませんか?
とりあえず現時点の1系最新のバージョンは1.12.4だったと思いますので
それを一度だけよみ

なるべくその直後に近い場所でbxsliderを追加で読んでください

投稿2019/09/02 05:30

yambejp

総合スコア114825

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

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

ixa

2019/09/02 07:07

試してみたのですが、「$ is not a function」のエラーが出てしまいました。 これは$の部分をすべてjQueryに書き換えなくてはならないのでしょうか?
yambejp

2019/09/02 07:10

> $ is not a function はjQuery本体の読み込み箇所が後ろすぎるのだと思います なるべくheadの先頭に近い場所で読んでください
ixa

2019/09/02 07:21

<script type='text/javascript' src='https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js'></script> <script type="text/javascript"> $(function(){ $('a[href^="#"]').click(function(){ var speed = 800; var href= $(this).attr("href"); var target = $(href == "#" || href == "" ? 'html' : href); var position = target.offset().top; $("html, body").animate({scrollTop:position }, speed, "swing"); return false; }); }); </script> この記述順序で $('a[href^="#"]').click(function() の行で既に$ is not function と言われてしまうのですが...
yambejp

2019/09/02 07:25 編集

なんか文字化けしてますが大丈夫ですか? まずは <script src="ttps://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> <script> $(function(){ console.log("hoge"); }); </script> だけで試してみてください(ttpsをhttpsに変更する)
ixa

2019/09/02 07:30 編集

<script type="text/javascript"> $(function(){ console.log("hoge"); }); </script> <script type="text/javascript"> $(function() { var pageTop = $('.page_top'); pageTop.hide(); $(window).scroll(function () { if ($(this).scrollTop() > 400) { pageTop.fadeIn(); } else { pageTop.fadeOut(); } }); pageTop.click(function () { $('body, html').animate({scrollTop:0}, 800, 'swing'); return false; }); }); </script> hogeの部分は通るようになったのですが、var pageTopの行でエラーが出ますね...($ is not a function)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問