teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

質問内容を詳細に記載

2019/01/22 03:27

投稿

_TM
_TM

スコア173

title CHANGED
File without changes
body CHANGED
@@ -1,20 +1,31 @@
1
1
  はじめまして。
2
2
 
3
+ 現在、JavaScriptを使用して、UserScriptを作成したいと考えています。
3
- 現在JavaScriptを使用して、あるhtmlのDOMのテキストを変更したいと考えていますが上手く行かないです。
4
+ その中で、あるhtmlのDOMのテキストを変更したいと考えていますが上手く行かないです。
4
5
  解決策をご教授いただけないでしょうか。
5
6
 
6
7
  ### 前提・実現したいこと
7
8
 
8
- JavaScriptを使用て、あるhtmlのDOMのテキスト変更したい
9
+ 実現たいこと(大枠):ドロップダウンメニューに項目追加したい
10
+ (現在hoge1, hoge2→ hoge1, hoge2, hoge3にしたい)
11
+ 考えたこと:まず、既存のドロップダウンメニューのhoge1をコピーし、その後、そのDOMの内容を変更(hoge1→hoge3)し、追加する。
9
12
 
10
13
  ### 発生している問題・エラーメッセージ
11
14
 
15
+ 既存のページから下記のコードを実行しhoge1を取得しました。
16
+
12
- ここに下記のDOMがあり、
17
+ ```JavaScript
18
+ whole_hoge = document.getElementsByClassName("dropdown-menu")[1];
19
+ hoge1 = whole_hoge.getElementsByTagName("li")[0];
20
+ clone_hoge1 = hoge1.cloneNode(true);
21
+ ```
22
+
23
+ clone_hoge1として取得した内容が下記になります。
13
24
  ```html
14
25
  <li>
15
26
  <a href="hoge">
16
27
  <span class="hoge" aria-hidden="true"></span>
17
- hoge
28
+ hoge1
18
29
  </a>
19
30
  </li>
20
31
  ```
@@ -24,7 +35,7 @@
24
35
  <li>
25
36
  <a href="hoge">
26
37
  <span class="hoge" aria-hidden="true"></span>
27
- hogehoge<!-- ここの文言のみを変更したい。 -- >
38
+ hoge3<!--とりあえず、ここの文言のみを変更したい。-->
28
39
  </a>
29
40
  </li>
30
41
  ```
@@ -32,14 +43,14 @@
32
43
  #### やったこと
33
44
 
34
45
  ```JavaScript
35
- hoge.innertText = "hogehoge";
46
+ clone_hoge1 .innertText = "hoge3";
36
47
  ```
37
48
 
38
49
  #### 結果(失敗)
39
50
 
40
51
  ```html
41
52
  <li>
42
- hogehoge <!-- hogehogeのみになってしまっている -- >
53
+ hoge3 <!-- hoge3のみになってしまっている -->
43
54
  </li>
44
55
  ```
45
56