私はこれを検索しようとしていますが、同じ問題を抱えている人は見つけられません。htmlファイルに予期しないhidden divが表示される
私の割り当てでは、同じディレクトリから外部ページのすべてのテキストを読むJavaScriptコードを書く必要がありましたが、それは問題ではありません。問題は、ランダムなテキストを含むテスト用のhtmlファイルを作成したときに表示されます。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>test</title>
</head>
<body>
<p> Just a random text.</p>
<h1> More of a random text</h1>
<p> And again, just testing the program.</p>
</body>
</html>
そして、このコードは、デバッガから取得されたHTMLコード:
Image of html file as from Inspector
問題は私のjavascript code
このdiv
要素からテキストを読み、配列を付加んです私が持っている言葉の
誰もがこのdivが生成され、それを取り除く方法を知っていますか?
P.S他のhtmlファイルを作成しようとしましたが、divもそこに表示されます。
ありがとうございましたadvance!
EDIT:
私のJSコードです:付属のコードとして
var externalPage;
var words = [];
var j = 0;
function indexOf(array, item) {
for (var i = 0; i < array.length; i++) {
if (array[i][0].toString() === item.toString()) return i;
}
return -1;
}
function clearNode(node) {
while (node.firstChild) {
node.removeChild(node.firstChild);
}
}
function sortNumerically(words) {
return words.sort(function(a,b){
return b[1] - a[1];
});
}
function sortAlphabetically(words) {
return words.sort();
}
function openFile(url) {
externalPage = window.open();
externalPage.location = url;
}
function extractWords(node) {
if (node.nodeType==Node.ELEMENT_NODE) {
for (var m = node.firstChild; m!=null; m = m.nextSibling)
extractWords(m);
}
else {
var value = node.nodeValue.trim();
value = value.split(/\s/);
for(var i = 0; i < value.length; i++) {
if(indexOf(words, value[i]) != -1) {
words[indexOf(words, value[i])][1] =
words[indexOf(words, value[i])][1] + 1;
} else if(value[i] != '') {
words.push([]);
words[j][0] = value[i];
words[j][1] = 1;
j++;
}
}
}
}
function populateTable(arr) {
var tbody = document.createElement('tbody');
clearNode(tbody);
for(var i = 0; i< words.length; i++) {
var tr = document.createElement('tr');
var tdW = document.createElement('td');
var tdF = document.createElement('td');
tdW.appendChild(document.createTextNode(arr[i][0]));
tdF.appendChild(document.createTextNode(arr[i][1]));
tr.appendChild(tdW);
tr.appendChild(tdF);
tbody.appendChild(tr);
}
document.getElementById('tableCounter').appendChild(tbody);
}
function generateArray(node) {
words = [];
j = 0;
extractWords(node, words);
alert(sortNumerically(words));
populateTable(words);
}
Javascriptを追加できますか? – Zze
div要素をまったく使っていないので、信じがたいです。 –
どのプラグインを使用しますか?スクリーンショットからあなたのHTMLの頭文字を見せることができますか? – DomeTune