$(“ <p> </p>”)和“ <p> </p>”

时间:2018-07-18 23:00:46

标签: jquery

在我的学习示例中,我使用了var foovar $foo,但是无法区分两者之间的区别:

<p id="css">CSS (Cascading Style Sheets) is a representation style sheet language.</p>

<script src="https://cdn.jsdelivr.net/npm/jquery@3.2.1/dist/jquery.min.js"></script>
<script>

$(document).ready(function(){
    var js = "<p id='js'>JavaScript often abbreviated as JS, is a high-level, interpreted programming language.</p>";
    var $jquery = $("<p id='jquery'>jQuery is a cross-platform JavaScript library designed to simplify the client-side scripting of HTML.</p>");
    $("#css").after(js);
    $("#css").after($jquery);
})
</script>

在上述最小代码中,当执行诸如$().html, $().before()之类的插入操作时,它们的功能相同。

1 个答案:

答案 0 :(得分:2)

简单的解释是"<p></p>"是一个简单的字符串。 $("<p></p>")产生包装在jQuery对象中的实际DOM对象。参见:http://api.jquery.com/jquery/#jQuery2

在下面的代码中查看控制台输出:

var js = "<p id='js'>JavaScript often abbreviated as JS, is a high-level, interpreted programming language.</p>";
var $jquery = $("<p id='jquery'>jQuery is a cross-platform JavaScript library designed to simplify the client-side scripting of HTML.</p>");
$("#css").after(js);

console.log(js);
console.log($jquery);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

查看after的文档。您将看到可以插入内容的选项很多,包括HTML字符串或元素。这就是为什么两者在您的代码中都相同的原因。

请注意,在变量名前加$是一种约定,表示已通过jQuery创建或检索的对象。 $实际上什么也不做。