質問編集履歴
3
エラー内容追記。誤字訂正。
test
CHANGED
File without changes
|
test
CHANGED
@@ -16,7 +16,7 @@
|
|
16
16
|
|
17
17
|
|
18
18
|
|
19
|
-
|
19
|
+
```javascript
|
20
20
|
|
21
21
|
#<object id="aaatext" data="aaa.html" type="text/plain" style="display:none"></object>
|
22
22
|
|
@@ -36,10 +36,14 @@
|
|
36
36
|
|
37
37
|
|
38
38
|
|
39
|
+
```
|
40
|
+
|
39
41
|
次に、文字列をDOMとして取得する方法は下記のサイトを参考にさせて頂きました。
|
40
42
|
|
41
43
|
http://donsuka-kk.hatenablog.com/entry/20140228/1393596415
|
42
44
|
|
45
|
+
```javascript
|
46
|
+
|
43
47
|
( function() {"use strict";
|
44
48
|
|
45
49
|
|
@@ -74,7 +78,7 @@
|
|
74
78
|
|
75
79
|
var htmlDoc;
|
76
80
|
|
77
|
-
htmlDoc = document.implementation.cateHTMLDocument('dom');
|
81
|
+
htmlDoc = document.implementation.createHTMLDocument('dom');
|
78
82
|
|
79
83
|
htmlDoc.documentElement.innerHTML = txt;
|
80
84
|
|
@@ -114,8 +118,116 @@
|
|
114
118
|
|
115
119
|
|
116
120
|
|
121
|
+
```
|
122
|
+
|
117
123
|
上記の text +=の部分を最初のソースにあるloadtextに置き換えてみたのですが、上手く行きません。
|
118
124
|
|
119
125
|
IEではalert(loadtext)できちんとソースコードが表示されています。
|
120
126
|
|
121
|
-
どのようにateHTMLDocumentの引数に設定したらよいでしょうか?
|
127
|
+
どのようにcreateHTMLDocumentの引数に設定したらよいでしょうか?
|
128
|
+
|
129
|
+
|
130
|
+
|
131
|
+
10/11追加
|
132
|
+
|
133
|
+
以下が実際に書いたコードです。
|
134
|
+
|
135
|
+
|
136
|
+
|
137
|
+
```javascript
|
138
|
+
|
139
|
+
<html>
|
140
|
+
|
141
|
+
<head>
|
142
|
+
|
143
|
+
<title>test</title>
|
144
|
+
|
145
|
+
</head>
|
146
|
+
|
147
|
+
<body>
|
148
|
+
|
149
|
+
|
150
|
+
|
151
|
+
<object id="ob1" type="text/html" data="sample.html">
|
152
|
+
|
153
|
+
</object>
|
154
|
+
|
155
|
+
|
156
|
+
|
157
|
+
<script type="text/javascript">
|
158
|
+
|
159
|
+
|
160
|
+
|
161
|
+
var obj = document.getElementById("ob1");
|
162
|
+
|
163
|
+
obj.onload = function() {
|
164
|
+
|
165
|
+
var loadtext = obj.contentDocument.documentElement.textContent;
|
166
|
+
|
167
|
+
//var loadtext = obj.contentDocument.documentElement.outerHTML
|
168
|
+
|
169
|
+
console.log(loadtext);
|
170
|
+
|
171
|
+
}
|
172
|
+
|
173
|
+
|
174
|
+
|
175
|
+
function getDom(txt) {
|
176
|
+
|
177
|
+
var htmlDoc;
|
178
|
+
|
179
|
+
htmlDoc = document.implementation.createHTMLDocument('dom');
|
180
|
+
|
181
|
+
htmlDoc.documentElement.innerHTML = txt;
|
182
|
+
|
183
|
+
return htmlDoc;
|
184
|
+
|
185
|
+
}
|
186
|
+
|
187
|
+
|
188
|
+
|
189
|
+
var DOM = getDom(loadtext);
|
190
|
+
|
191
|
+
console.log(DOM.getElementById('ichiran').textContent);
|
192
|
+
|
193
|
+
|
194
|
+
|
195
|
+
</script>
|
196
|
+
|
197
|
+
|
198
|
+
|
199
|
+
</body>
|
200
|
+
|
201
|
+
</html>
|
202
|
+
|
203
|
+
```
|
204
|
+
|
205
|
+
miyabi_takatsuk 様
|
206
|
+
|
207
|
+
dodox86 様
|
208
|
+
|
209
|
+
m.ts10806 様(タグ追加の手続きは自分ではできないようですので、後程行います)
|
210
|
+
|
211
|
+
|
212
|
+
|
213
|
+
ご指摘ありがとうございます。投稿内容修正いたしましたのでご確認のほどよろしくお願いいたします。
|
214
|
+
|
215
|
+
|
216
|
+
|
217
|
+
Chromeで開いた状態で以下のエラーです。
|
218
|
+
|
219
|
+
|
220
|
+
|
221
|
+
getDom(text)のところで loadtext is not defined というエラーがでます。
|
222
|
+
|
223
|
+
|
224
|
+
|
225
|
+
documentElement.textContent;のところで documentElement' of null というエラーがでます。
|
226
|
+
|
227
|
+
|
228
|
+
|
229
|
+
IEではalertはでますが、console.logが表示されません。
|
230
|
+
|
231
|
+
|
232
|
+
|
233
|
+
ご教示のほどよろしくお願いいたします。
|
2
文字が余分に入っていた
test
CHANGED
File without changes
|
test
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
|
9
9
|
ローカルにあるHTMLファイルをDOMとして取得し、ソースを書き換える方法を探しています。
|
10
10
|
|
11
|
-
まず、HTMLファイル
|
11
|
+
まず、HTMLファイルのソースを文字列として取得する方法として、下記サイトを参考にさせて頂きました。
|
12
12
|
|
13
13
|
https://www.excellence-blog.com/2018/02/02/html%E3%81%A7%E5%A4%96%E9%83%A8%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%92%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%82%80/
|
14
14
|
|
1
タイトルが文字が切れていたので修正
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
を読み込み、DOMに設定する方法
|
1
|
+
HTMLを読み込み、DOMに設定する方法
|
test
CHANGED
File without changes
|