Jquery计数字符

lgt*_*lgt 7 jquery

我有问题弄清楚为什么jquery字符串计数器不会显示预期的结果.

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">
 var count = $('h1').length;
 alert(count);

</script>

</head>
<body>

<h1>some text</h1>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

结果应该是这个例子9,但我得到0

Mat*_*ean 22

$("h1")返回一个jQuery对象(其中length属性是返回的元素数),并且由于您在页面完全加载之前调用它,它实际上是重新调整0个元素.

你想要的是:

$(document).ready(function() {
    var count = $("h1").text().length;
    alert(count);
});
Run Code Online (Sandbox Code Playgroud)

  • 将长度()更改为长度 (2认同)

Ric*_*ton 5

你得到0因为代码运行时h1还没有加载,所以首先需要把它放在document.ready中.这仍然无法给出您想要的答案,因为它只会告诉您页面上的h1标签数量.要获得您想要的答案,您需要做:

$(document).ready(function() {
    var count = $('h1').text().length;
    alert(count);
});
Run Code Online (Sandbox Code Playgroud)