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

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

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

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

jQuery

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

コードレビュー

コードレビューは、ソフトウェア開発の一工程で、 ソースコードの検査を行い、開発工程で見過ごされた誤りを検出する事で、 ソフトウェア品質を高めるためのものです。

HTML

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

Q&A

解決済

2回答

934閲覧

jsのfunction()を複数まとめて書く方法

meli

総合スコア312

JavaScript

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

jQuery

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

コードレビュー

コードレビューは、ソフトウェア開発の一工程で、 ソースコードの検査を行い、開発工程で見過ごされた誤りを検出する事で、 ソフトウェア品質を高めるためのものです。

HTML

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

0グッド

0クリップ

投稿2020/09/15 02:47

編集2020/09/15 04:25

お世話になっております。
jsのfunctionで、同じ処理が複数あるのでまとめたいのですが、初心者のため記述方法が分かりません。
test_funcの中からイメージをクリックすると、下リストの画像が表示されるというものです。
function a(),b(),c()のremoveClass,addClassをまとめて書きたいのですが、書き方を教えていただきたいです。

HTML

1<ul class="test_func"> //選択 2<li onclick="a()" class="test"><a href="" data-filter="a"><img src="../img/a.png"></a></li> 3<li onclick="b()" class="test"><a href="" data-filter="b"><img src="../img/b.png"></a></li> 4<li onclick="c()" class="test"><a href="" data-filter="c"><img src="../img/c.png"></a></li> 5</ul> 6~~~~ 7//画像を表示 8<div class="test1"> 9<ul class="list"> 10<li class="xx" data-category="a"><img src="../img/aa.png"><a href="1.html">1</a></li> 11<li class="xx" data-category="b"><img src="../img/bb.png"><a href="2.html">2</a></li> 12<li class="xx" data-category="c"><img src="../img/cc.png"><a href="3.html">3</a></li> 13</div> 14<div class="test2"> 15<ul class="list"> 16<li class="xx" data-category="a"><img src="../img/aa.png"><a href="1.html">1</a></li> 17<li class="xx" data-category="b"><img src="../img/bb.png"><a href="2.html">2</a></li> 18<li class="xx" data-category="c"><img src="../img/cc.png"><a href="3.html">3</a></li> 19</div>

js

1function a(){ 2 $('img#category_name').attr('src', "../img/aaa.png"); 3 $('div.test1').removeClass('test2'); 4 $('div.test2').addClass('test1'); 5} 6function b(){ 7 $('img#category_name').attr('src', "../img/bbb.png"); 8 $('div.test2').removeClass('test1'); 9 $('div.test1').addClass('test2'); 10} 11function c(){ 12 $('img#category_name').attr('src', "../img/ccc.png"); 13 $('div.test2').removeClass('test1'); 14 $('div.test1').addClass('test2'); 15}

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

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

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

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

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

yambejp

2020/09/15 03:57

jQueryでよいならjQueryタグつけてください
meli

2020/09/15 04:25

ありがとうございます、追加致しました。
guest

回答2

0

ベストアンサー

以下のようにされてはどうでしょう?

html

1<ul class="test_func">  2<li onclick="hoge('../img/aaa.png')" class="test"><a href="" data-filter="a"><img src="../img/a.png"></a></li> 3<li onclick="hoge('../img/bbb.png')" class="test"><a href="" data-filter="b"><img src="../img/b.png"></a></li> 4<li onclick="hoge('../img/ccc.png')" class="test"><a href="" data-filter="c"><img src="../img/c.png"></a></li> 5</ul>

javascript

1function hoge(path) { 2 $('img#category_name').attr('src', path); 3 $('div.test2').removeClass('test1'); 4 $('div.test1').addClass('test2'); 5}

投稿2020/09/15 02:51

nekoniki

総合スコア2411

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

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

meli

2020/09/15 03:35

ご回答ありがとうございます! 無知なもので申し訳ないのですが、function hoge(path) {のpathにはどこのpathを描けばよろしいのでしょうか?
nekoniki

2020/09/15 03:57

pathは関数の引数なので、onClickした要素から渡されてきます。 <li onclick="hoge('../img/aaa.png')" class="test"><a href="" data-filter="a"><img src="../img/a.png"></a></li> 例えば上記の場合、'../img/aaa.png'がpathになります。
meli

2020/09/15 04:35

ありがとうございます! てっきりpathに何かを書くのかと勘違いしておりましたが、pathのままで上手くいきました! ご教示いただきありがとうございます!
guest

0

liのclick処理と中のアンカーが競合している感じがします。
どちらか片方に絞ったほうが良いと思います

投稿2020/09/15 04:00

yambejp

総合スコア116724

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

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

meli

2020/09/15 04:38

ご回答ありがとうございます! 使用しているライブラリの影響で色々と試行錯誤してこの形になってしまったので、全体が出来次第、片方に絞るなどfixを検討していきたいと思います。 ご教示助かります、ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問