我有两个HTML文件:A.html和B.html。目的是统计A.html中特定DIV的数量,并在打开B.html时显示此数量。
A.html包含:
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css" media="all" />
<script type="text/javascript" src="style/js/scripts.js"></script>
</head>
<body>
<div class="elem1"></div>
<div class="elem2"></div>
<div class="elem2"></div>
<div class="elem2"></div>
<div class="elem1"></div>
<div class="elem2"></div>
</body>
</html>
B.html包含:
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css" media="all" />
<script type="text/javascript" src="style/js/scripts.js"></script>
</head>
<body onload="CntrElem2()">
The number of elem2 in A.html is: <span id="myNum"></span>.
</body>
</html>
javascript(在style/js/scripts.js中)函数是:
function CntrElem2() {
var NumOfElem2 = document.querySelectorAll(".elem2");
document.getElementById("myNum").innerHTML = NumOfElem2.length;
}
所以,这个想法是-当我打开B.html时,它从scripts.js调用CntrElem 2函数,反过来应该去计数A.html中class=“elem 2”的数量(在我的例子中= 4)并显示它。我显然得到的是= 0(因为CntrElem 2在HTML文件中对elem 2计数,它是从HTML文件中调用的,即B.html而不是A.html)。如何指定要应用querySelectorAll的HTML文件?谢谢!
1条答案
按热度按时间ars1skjm1#
使用fetch读取A.html文档,将html放入div中并使用querySelectorAll查询div,将函数更改为以下内容: