
同じHTML上にメニューナビとタイルレイアウトの2つをいれようとしていますが、
片方のみしか作動しません。
色々と探した結果、複数使う場合はちゃんとした記述方法があるということがわかったのですが、その方法を使っても片方のみしか動きません。
こちらが記述になります。
-------------------------------------------------------------------
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.1 …
<script src="js/jquery.fs.naver.js"></script>
<link rel="stylesheet" href="css/jquery.fs.naver.css">
<script src="http://cdnjs.cloudflare.com/ajax/libs/jquery-eas … type="text/javascript" charset="UTF-8"></script>
<script src="http://code.jquery.com/jquery-1.10.0.min.js" type="text/javascript" charset="UTF-8"></script>
<script src="js/jquery.vgrid.min.js" type="text/javascript" type="text/javascript" charset="UTF-8"></script>
<script type="text/javascript">
var $1113 = $.noConflict(true);
$(document).ready(function($) {
$("nav").naver({
labels: {
closed: "メニュー",
open: "CLOSE"
},
maxWidth: "568px"
});
});
$(function(){
$("#grid-content").vgrid();
});
</script>
----------------------------------------------------------------------
以上が現在の記述ですが作動できません。
ご回答宜しくお願い致します。
No.3ベストアンサー
- 回答日時:
ANo1、2です。
>問題なく両方問題なく作動しますでしょうか?
当方の環境では、両方とも動作しています。
回答のソースで動作しないとのことですが、そのままで試していますか?
(とはいっても、src属性などが省略表示されてしまうので、修復が必要でしたが・・・)
念のため、コピペ可能なようにして再掲しますので、そのままコピペで試してみてください。
(大勢に影響ないところの不備を少しだけ訂正してあります。)
※ 以下のソースをコピペの上、scriptタグのsrc属性とlinkタグのhref属性のURLの最初の一文字を「h(全角のh)」→「h(半角英数のh)」に修正してから、試してみてください。
(修正個所は、全部で5箇所あります)
<!DOCTYPE HTML>
<html lang="ja">
<head><title>test</title>
<style type="text/css">
#navre a {
background: #6C0;
display: block;
float: left;
margin: 0 1px 0 0;
padding: 8px 30px;
text-decoration: none;
}
#navre a:hover {
background: #DC0;
}
@media screen and (max-width: 740px) {
#navre a {
float: none;
margin: 0 0 1px 0;
width: 100%;
}
}
#grid-content{ margin-top: 10px; }
#grid-content div{
width: 200px;
border: 1px solid gray;
margin: 5px; padding: 5px;
}
#grid-content div h3{ margin:0 0 5px; }
#grid-content div p{ margin:0; padding:0; }
</style>
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">google.load("jquery","1");</script>
<link rel="stylesheet" type="text/css" href="http://studio-benkei.com/wp-content/themes/sb-theme/common/sample/css/jquery.fs.naver.css"/>
<script type="text/javascript" src="http://studio-benkei.com/wp-content/themes/sb-theme/common/sample/js/jquery.fs.naver.min.js"></script>
<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/jquery-easing/1.3/jquery.easing.min.js"></script>
<script type="text/javascript" src="http://blog.xlune.com/2009/09/vgrid/js/jquery.vgrid.min.js"></script>
<script type="text/javascript">
$(function(){
$("#navre").naver();
$("#grid-content").vgrid({ });
});
</script>
</head>
<body>
<div style="overflow: hidden;">
<nav id="navre">
<a href="#">home</a>
<a href="#">piyo1</a>
<a href="#">piyo2</a>
<a href="#">piyo3</a>
</nav>
</div>
<div id="grid-content">
<div><h3>hoge1</h3>
<p>fugafugafuga</p>
</div>
<div><h3>hoge2</h3>
<p>fugafugafuga</p>
<p>fugafugafuga</p>
</div>
<div><h3>hoge3</h3>
<p>fugafugafuga</p>
</div>
<div><h3>hoge4</h3>
<p>fugafugafuga</p>
<p>fugafugafuga</p>
<p>fugafugafuga</p>
<p>fugafugafuga</p>
</div>
<div><h3>hoge5</h3>
<p>fugafugafuga</p>
<p>fugafugafuga</p>
</div>
</div>
</body>
</html>
丁寧なご教授有難うございました。
記述どおりやりましたら、しっかり動きました。
誠に有り難うございました。
未だ頂いた記述の理解ができていないので、しっかりと記述を理解したいと思っております。
そして自分でも確実にできるようにしたいと思っております。
何度もご丁寧にご回答いただき有難うございました。
No.2
- 回答日時:
ANo1です。
>私が質問で記載した記述ですと最初のJQueryが動いて~
私が書いたのはjQuery本体のことです。
ヴァージョン1.11と1.10を続けて読み込んでいますが、後の方(1.10)が残るだけにあるという意味です。
つまり、その後$やjQueryで呼び出されるのは後者になりますという意味です。
しかしながら、ご提示のソースでは、その後
var $1113 = $.noConflict(true);
を実行していますので、これより後では$やjQueryは未定義状態になっていると思います。
それなので、その後のスクリプトは動作していないのではないでしょうか?
どうも、話が通じてないようなので、実際のライブラリで試してみました。
naverもvGridも使ったことが無いので、まったく知りませんが、サンプルのコピペを超テキトーに短縮してテストしています。
以下のソースでテストしたところ、両方とも動作していますので、競合は無さそうに思われますが・・・
どこか、設置方法やオプションの設定、あるいはURIの指定等でおかしなことになっていませんか?
※ ライブラリの説明を読まずに超テキトー設定なので、応用の際は、きちんと説明をお読みの上正しく設置してください。
※ 手元のIE11及びfx42で動作を確認しています。
※ 以下のテストサンプルはコピペでも動作するはずですが、表示される際にURIがリンクとなって省略されてしまいますのでご注意。
<!DOCTYPE HTML>
<html lang="ja">
<head><title>test</title>
<style type="text/css">
#navre a {
background: #6C0;
display: block;
float: left;
margin: 0 1px 0 0;
padding: 8px 30px;
text-decoration: none;
}
#navre a:hover {
background: #222;
}
@media screen and (max-width: 740px) {
#navre a {
float: none;
margin: 0 0 1px 0;
width: 100%;
}
}
#grid-content{ margin-top: 10px; }
#grid-content div{
width: 200px;
border: 1px solid gray;
margin: 5px; padding: 5px;
}
#grid-content div h3{ margin:0 0 5px; }
#grid-content div p{ margin:0; padding:0; }
</style>
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">google.load("jquery","1");</script>
<link rel="stylesheet" type="text/css" href="http://studio-benkei.com/wp-content/themes/sb-
theme/common/sample/css/jquery.fs.naver.css"/>
<script type="text/javascript" src="http://studio-benkei.com/wp-content/themes/sb-
theme/common/sample/js/jquery.fs.naver.min.js"></script>
<script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/jquery-eas …
<script type="text/javascript" src="http://blog.xlune.com/2009/09/vgrid/js/jquery.vg …
<script type="text/javascript">
$(function(){
$("#navre").naver();
$("#grid-content").vgrid({ });
});
</script>
</head>
<body>
<div style="overflow: hidden;">
<nav id="navre">
<a href="#">home</a>
<a href="#">piyo1</a>
<a href="#">piyo2</a>
<a href="#">piyo3</a>
</nav>
</div>
<div id="grid-content">
<div><h3>hoge1</h3>
<p>fugafugafuga
</div>
<div><h3>hoge2</h3>
<p>fugafugafuga
<p>fugafugafuga
</div>
<div><h3>hoge3</h3>
<p>fugafugafuga
</div>
<div><h3>hoge4</h3>
<p>fugafugafuga
<p>fugafugafuga
<p>fugafugafuga
<p>fugafugafuga
</div>
<div><h3>hoge5</h3>
<p>fugafugafuga
<p>fugafugafuga
</div>
</div>
</body>
</html>
ご丁寧にご回答ありがとうございます。
私のほうでもご提示いただいたソースで試させて頂きましたが、
やはり$("#grid-content").vgrid({ });の方がしっかりと動かない状況でした。
タイルレイアウトのgrid-contentは画面サイズに合わせて自動的に2段、3段となるのですが私の環境では1段のままでjQueryが動かないです。
このページを参考にしました。
http://blog.xlune.com/2009/09/vgrid/demo001.html
環境はFx 43.0.1、IE11で試してみました。
ハンバーガーメニューの方は確かに動いていました。
fujillinさんでは、問題なく両方問題なく作動しますでしょうか?
何度もすみません。
ご回答有難うございます。
No.1
- 回答日時:
こんにちは。
通常は、ライブラリ同士が競合しない限り複数(3つでも4つでも)同時に実装することが可能です。
また、大抵のライブラリは、競合を避けるための注意をはらって作られているものが多いとは思いますが…
動作しない原因は競合以外にもいろいろあり得ると思いますが、とりあえず競合が原因だとして・・・
ご提示のHTMLでは異なるバージョンのjQueryを読み込んでいるようですが、ご提示の記述のままだと意味がありません。
先に読み込んだjQueryを後から読み込んだjQueryでそのまま上書きしていますから、後から読んだものだけが有効になることになります。
これらを別々に使い分けたいのであれば、
1)先のものを読込む
2)jQuery.noConflictで一旦別の変数に設定(以後はこの変数名で呼び出す)
3)後のものを読込む(通常通り$やjQueryで呼び出し可能)
といった手順で実行するようにしてください。
当然ながら、その後の呼び出し(=利用)に際しては、1)を利用する場合は新しく定義した変数名で、2)を利用する場合は通常の$やjQueryで利用するように使い分ける必要があります。
あるいは、2)と同時に一つ目のライブラリの初期設定なども行ってしまうほうが分かり易いかもしれませんね。
詳しくは以下を参照してください。
http://semooh.jp/jquery/api/core/jQuery.noConfli …
http://api.jquery.com/jQuery.noConflict/
※ 競合以外が原因の場合は、上記では効果がないと考えられます。
ご回答有難うございます。
参考のサイトを見て検証していますが、私の理解が乏しいのか
未だ成功に至っていません。
ひとつ質問ですが、ご回答頂いた点で少し違うのが後者の方が動くということですが、
私が質問で記載した記述ですと最初のJQueryが動いて
後のほうが動かない状態なのですが、これでも競合が原因なのでしょうか?
それともただ記述が間違っているだけでしょうか?
何度もすみません。
宜しくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
- JavaScript プラグイン無しでContactform7にdatepickerを実装 3 2022/10/25 02:18
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- JavaScript GoogleChart 階層ごとのブロックの長さを個別に設定したい 1 2022/07/06 14:27
- HTML・CSS 下にスクロールしても、追従するボタンのコードを書いたのですが、ボタンの中の画像が半分しか表示されない 1 2022/04/16 21:31
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
-
大麻の使用罪がなかった理由や法改正での変更点、他国との違いを弁護士が解説
ドイツで2024年4月に大麻が合法化され、その2ヶ月後にサッカーEURO2024が行われた。その際、ドイツ警察は大会運営における治安維持の一つの方針として「アルコールを飲んでいるグループと、大麻を吸っているグループ...
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
セレクトボックスを2つ設けて選...
-
食材の期限を管理するためにGAS...
-
Q&A掲示板の入力フォームに文字...
-
GASでチェックボックスを一括of...
-
jsで、配列内の文章を改行する...
-
タグを教えてください。
-
ラジオボタンを複数選択したと...
-
jsで質問です。 formをsubmitし...
-
2025年相性がいい人のサイトの...
-
CookieをWebStoeageに変える
-
Adobe acrobat proでフォームを...
-
Outlookのアカウントがあるとメ...
-
jqueryのselect2で検索欄の文字...
-
<tr>指定した表の行要素をボ...
-
ビデオのJSについて
-
鍵盤アプリで、スマホの画面に...
-
<div>のタッチ状態を維持したま...
-
jQueryでシンセサイザーを作っ...
-
プログラミング 学習
-
HTMLでサブフレームから親のス...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
スマホ上で、左右スワイプで次...
-
タグを教えてください。
-
jqueryのselect2で検索欄の文字...
-
jsonテキストデータの並び替え...
-
初心者です。gulpでコンパイル...
-
ラジオボタンを複数選択したと...
-
階層別の組織図の自動作成について
-
jQueryで同じクラス名のものを...
-
二次元配列を使って順位をだす...
-
読み込んだQRコードをフォーム...
-
画面遷移を行わずに同一ページ...
-
セレクトを全て選択されていな...
-
【Google Apps Script】「ライ...
-
Adobe acrobat proでフォームを...
-
二次元配列の全要素の全要素を...
-
【GAS】WEBアプリでハイパーリ...
-
GASでGoogleフォームの自動返信...
-
フォームが空欄の時にフォーム...
-
セレクトボックスで配列を呼び...
-
イラストレーター、縦中横のシ...
おすすめ情報