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

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

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

HTMLで用いる<button>タグです。

JavaScript

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

jQuery

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

HTML

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

Q&A

解決済

3回答

914閲覧

jQuery セレクタ 指定方法

ArMigELo

総合スコア76

button

HTMLで用いる<button>タグです。

JavaScript

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

jQuery

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

HTML

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

0グッド

0クリップ

投稿2021/07/26 04:46

編集2021/07/26 07:00

jQueryで非表示にしたいHTMLのボタンがあります。
しかし同じ名前で記述されている部分が多くうまく設定できません。

<条件>
HTMLファイルの書き換えは出来ません。
jQueryでHTML,CSSを追加していく。

ご教授お願い致します。

HTML文 <div title="" role="toolbar" data-alloy-tabstop="true" tabindex="-1" class="tox-toolbar__group"> <button aria-label="HTMLの挿入" title="HTMLの挿入" type="button" tabindex="-1" class="tox-tbtn" aria-disabled="false"> <span class="tox-icon tox-tbtn__icon-wrap"> <svg width="24" height="24" role="addhtml"> <use xlink:href="/rs-statics/images/sprite.svg#ic_addhtml"></use> </svg> </span> </button> <button aria-label="アセットの挿入" title="アセットの挿入" type="button" tabindex="-1" class="tox-tbtn" aria-disabled="false"> <span class="tox-icon tox-tbtn__icon-wrap"> <svg width="24" height="24" role="new-document"> <use xlink:href="/rs-statics/images/sprite.svg#ic_asset"></use> </svg> </span> </button> 非表示にしたいHTML文 <button aria-label="画像の挿入" title="画像の挿入" type="button" tabindex="-1" class="tox-tbtn" aria-disabled="false"> <span class="tox-icon tox-tbtn__icon-wrap"> <svg width="24" height="24" role="image"> <use xlink:href="/rs-statics/images/sprite.svg#ic_image"></use> </svg> </span> </button>

下記のようにセレクタを設定しました。
しかし非表示に出来ませんでした。

$("button[aria-label='画像の挿入']").addClass("hidden"); $("button[title='画像の挿入']").addClass("hidden"); $(":button[title='画像の挿入'].tox-tbtn").addClass("hidden"); $("use[href = '/rs-statics/images/sprite.svg#ic_image']").parent("tox-tbtn").addClass("hidden"); $("use[href = '/rs-statics/images/sprite.svg#ic_image']").parent("tox-tbtn").css("display" , "none"); $("button[title='画像の挿入']").css("display", "none"); $("button[aria-label='画像の挿入']").hide(); $("button[title='画像の挿入']").hide(); $(":button[title='画像の挿入'].tox-tbtn").hide(); $("use[href = '/rs-statics/images/sprite.svg#ic_image']").parent("tox-tbtn").hide();

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

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

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

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

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

int32_t

2021/07/26 07:08

JavaScriptのコードはどういうタイミングで実行していますか? できれば、問題を再現できる完全な HTML+CSS+JavaScriptのコードを掲載してください。
ArMigELo

2021/07/26 08:23

>int32_t 完全なコードは社外秘もあるので書けませんでした。
guest

回答3

0

.addClass("hidden");ではなく.hide()で試してみてはいかがでしょう。

【.hide() | jQuery API Documentation】
https://api.jquery.com/hide/

投稿2021/07/26 05:57

kei344

総合スコア69606

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

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

ArMigELo

2021/07/26 06:56

.hide試させて頂きました。 非表示に出来ませんでした...
kei344

2021/07/26 07:16

https://jsfiddle.net/kzn6jmL8/ ↑提示のコード(と私の回答)で問題なく非表示にできることが確認できました。 jQueryを書いている場所が当該要素より前の部分で ロードを待っていない(「$(function{})」の中で実行していない)とか、ページ表示後に動的に作成される要素とか、そういう状況では?
guest

0

ベストアンサー

3番目の例示以外は条件にあわないので非表示にはならないでしょう
また、クラスで指定しているのでcssの指定が必要です

CSS

1.hidden{display:none}

投稿2021/07/26 04:54

yambejp

総合スコア116734

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

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

ArMigELo

2021/07/26 05:52

セレクタの設定方法はあっているということでしょうか?
yambejp

2021/07/26 05:55

属性やクラス、IDなどをセレクタとして利用する方法は問題ありません。 ただカスタムデータではない「aria-label」のようなものが 悪影響がないとはいいきれません
ArMigELo

2021/07/26 06:55

「class="tox-tbtn"」に「hidden」が入らないです...
yambejp

2021/07/26 07:04

$(function(){ $('.tox-tbtn').addClass('hidden'); }); とすればtox-tbtnクラスにhiddenクラスは追加されますよね? どの処理でhiddenクラスを付加する想定かわかりませんが 別の条件がひっかかっているのでは?
yambejp

2021/07/26 07:12

もしかしてここのことでしょうか? $("use").filter(function(){return $(this).attr('xlink:href')=='/rs-statics/images/sprite.svg#ic_image';}).closest('.tox-tbtn').addClass('hidden');
ArMigELo

2021/07/26 07:28

できました。ありがとうございました。
guest

0

htmlが変更可能であればhtmlの各タグにidを付与しましょう。
その後、IDで取得するように変更するのが第一歩です

javascript

1$('#追加したID')

あるいは、これらのボタンが異なる領域に定義されているのであれば親子関係を利用して
以下のように定義することで解決できるかもしれません。

javascript

1$('.parent button')

投稿2021/07/26 04:53

momotuwo

総合スコア155

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

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

ArMigELo

2021/07/26 05:54

直接変更が出来ないです。 領域も同じ位置にあります。親も同じです。 jQueryでidをこの列に入れることは可能ですか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問