javascript – 这两个jQuery用法有什么区别

前端之家收集整理的这篇文章主要介绍了javascript – 这两个jQuery用法有什么区别前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我是一个 jquery首发,所以如果它是一个错误的人原谅我:)

我只是想知道为什么将内容放在不同的位置使这个脚本工作,尽管我认为最好的脚本保留在文档的主题部分.请解释一下这个概念.

工作守则

<!DOCTYPE html>
<html>
<head>
<Meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Example 2</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>

</head>

<body>

<p>
</p>

<script type="text/javascript">
jQuery("p").html("Check if jQuery Supports Ajax method : "+ jQuery.support.ajax );
</script>

</body>
</html>

不工作

<!DOCTYPE html>
<html>
<head>
<Meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Example 2</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
jQuery("p").html("Check if jQuery Supports Ajax method : "+ jQuery.support.ajax );
</script>
</head>

<body>

<p>
</p>

</body>
</html>

解决方法

在第二种情况下,代码在< p>之前执行.已被解析为DOM树,所以虽然它仍然有效,但无法将输出文本放入其中.换句话说,jQuery(“p”)不匹配任何元素,所以.html()“什么都不做”.

您可以通过等待DOM完全解析来解决此问题:

jQuery(function() {
    jQuery("p").html(...);
});

或者通过使用不依赖于< p>的输出机制.现有的,例如alert()或console.log().

猜你在找的jQuery相关文章