有时我会看到像$('<img/>')
这样的结构。 $('<img/>')
与$('img')
有何不同?我在哪里可以阅读更多相关信息?
我试着查看jQuery Selectors,但发现与此格式无关。
答案 0 :(得分:5)
当传递一个看起来像HTML的字符串时,jQuery函数被重载以构造新的jQuery元素。来自docs:
如果一个字符串作为参数传递给$(),jQuery会检查 字符串,看它是否看起来像HTML(即,它以
<tag ... >
开头)。 如果不是,则将字符串解释为选择器表达式,如 如上所述。但如果字符串看起来像是一个HTML代码段, jQuery尝试按HTML描述创建新的DOM元素。 然后创建并返回引用这些的jQuery对象 元件。
答案 1 :(得分:4)
$('<img/>')
创建图片,而$('img')
选择所有当前存在的图片。
答案 2 :(得分:3)
$('<img />')
创建一个要插入DOM的新<img />
元素。
$('img')
选择所有现有的<img />
元素。
通常,可以使用$('<img />')
在DOM中创建元素,如下所示:
var toAppend = $('<img />');
toAppend.appendTo($('#myDiv'));
您可以使用$('img');
选择器来处理CSS(作为任意示例):
$('img').css('marginTop', 20);
上面将在DOM中的每个图像的顶部添加20px的边距。