【问题标题】:jQuery . what does $('<img/>') mean? [duplicate]jQuery . $('<img/>') 是什么意思? [复制]
【发布时间】:2012-10-17 18:15:10
【问题描述】:

可能重复:
What does the selector syntax mean in $( “<div/>” ).text( message )

我已经搜索过,但找不到任何关于此的信息...包括 jQuery 参考...

$('&lt;img/&gt;') 在 jQuery 中是什么意思? 我只熟悉$('img')

我在这篇文章中遇到过这段代码: http://tympanus.net/codrops/2010/11/16/hover-slide-effect/

但在代码中,当我用另一个替换一个时,它停止工作,所以我猜它们不一样。

还有最后一段代码:

.attr('src',$this.attr('src'));

它是干什么用的?它似乎是多余的,但如果我删除它也会失败。 谁能详细说明一下?

谢谢

【问题讨论】:

  • 通常,文档会提供解释 :) api.jquery.com/jQuery/#jQuery2
  • .attr( 在新创建的&lt;img&gt; 标签上被调用,而$this 是一个已经存在的img。请记住,$this$(this) 不同。
  • @FelixKling 我想要一个结束的理由“在标准文档中”...
  • @dystroy: meta.stackexchange.com/questions/86043/… ... 或者我们所需要的只是一个非常好的规范答案。
  • @FelixKling,谢谢。问题是我认为它是一个选择器,所以很难在手册中找到它。

标签: jquery jquery-selectors jquery-attributes


【解决方案1】:

$(anyHtmlCode) 使用您提供的 HTML 构建一组 jQuery 包装的元素。

From the documentation :

如果一个字符串作为参数传递给$(),jQuery 会检查 字符串以查看它是否看起来像 HTML(即,它在某处有 &lt;tag ... &gt; 在字符串中)。如果不是,则字符串被解释为选择器 表达式,如上所述。但是如果字符串看起来是 HTML sn-p,jQuery 尝试按照描述创建新的 DOM 元素 通过 HTML。然后创建并返回一个引用的 jQuery 对象 对这些元素。您可以执行任何常用的 jQuery 方法 这个对象

线

$someElement.attr('src',$this.attr('src'));

将 $someElement 的 src 设置为与 $this 的相同。

【讨论】:

  • 而且这些创建的图像永远不会添加到页面中,对吗?它们用于强制图像加载 attr('src',$this.attr('src')) 代码段,并引用每个图像?
  • 似乎是这样,但我不想阅读整篇文章。一旦你了解了 jQuery 的基础知识,我会发现编写所需的代码比调整或参数化一个通常太大的插件更容易。对于一件简单的事情,这似乎有很多代码。
【解决方案2】:

$('&lt;img/&gt;') 正在创建一个新的图像标签。 它类似于

document.createElement('img')

【讨论】:

    【解决方案3】:

    $('&lt;img /&gt;') 实际上创建了一个新的img 元素并将其包装在一个jQuery 对象中,而$('img') 选择页面上的所有img 元素。

    $('img').attr('src',$this.attr('src')) 设置第一个匹配的img 元素的src 属性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-10
      • 2019-09-12
      • 2015-01-22
      • 2017-06-19
      • 2011-05-10
      • 2015-04-21
      相关资源
      最近更新 更多