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

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

新規登録して質問してみよう
ただいま回答率
85.50%
Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

JavaScript

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

HTML

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

Q&A

解決済

1回答

3062閲覧

HTMLCollectionへのアクセスができない

sanezane

総合スコア91

Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

JavaScript

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

HTML

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

0グッド

0クリップ

投稿2020/01/14 14:05

編集2020/01/14 14:23

やりたいこと

ページがレンダリングされたタイミングであるHTML要素にclassを追加したい

困っていること

該当のHTML要素(HTMLCollection)にアクセスできない(キャプチャは以下のソースの出力結果)

現状の実装

const lists = document.getElementById('HOGE') const target = lists.children[0].children[0].children[0].children[0].children console.log('target') console.log(target) console.log('target[0]') console.log(target[0])

イメージ説明

  • getElementByIdで取得した型はHTMLElementでした。

出力

イメージ説明

  • targetの部分でHTMLCollectionは取得できているのにtarget[0]でアクセスできない状況です。

ご指摘あればいただけると助かります。

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

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

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

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

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

m.ts10806

2020/01/14 14:17

対象のhtmlを提示されないと回答難しいかと。 あと最後の画像からするとVueですかね。タグに追加しておいた方が良いと思います。
sanezane

2020/01/14 14:22

ご意見ありがとうございます。 HTML部分はElementUIとVueを使っているので聞きたいことがぐちゃぐちゃになってしまうと思って記載していませんでしたが、確かに回答しにくいですね。すみません。後ほど載せます。 タグも追加します。
guest

回答1

0

ベストアンサー

> あるHTML要素に

子孫の要素の探索 には簡便なメソッドがあります。

querySelector() や querySelector() になりますが、
Document だけでなく Element にもメソッドがあり、絞り込みがしやすくなっています。

document.querySelector() / document.querySelectorAll() な使い方

elemHoge.querySelector() / elemHoge.querySelectorAll() な使い方

target が見つかったら、classList を操作するだけです。

javascript

1var target = elmHoge.querySelector("あるHTML要素を指示するセレクタ") 2if( target ) { 3 // target.classList.add() などでclassを操作 4}

投稿2020/01/15 02:12

AkitoshiManabe

総合スコア5432

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

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

sanezane

2020/01/15 14:35

querySelectorはあまり使ったことがありませんでした。ありがとうございます!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問