【问题标题】:Can "this" be used in place of a selector? ...in jQuery?可以使用“this”代替选择器吗? ...在 jQuery 中?
【发布时间】:2015-05-25 18:28:27
【问题描述】:

我正在学习 JavaScript 和 JQuery,并试图围绕“这个”。是

$("p").click(function(){ $("p").slideUp('slow');});

功能上与

相同
$("p").click(function(){ $(this).slideUp('slow');});

?

我确信有更聪明的方式来使用“this”,但如果我是正确的,它在功能上是相同的,那么我知道我有更好的理解。

【问题讨论】:

  • 第一种情况:点击any p标签,向上滑动all p标签,在第二个:通过点击 any p 标签,slideUp only target p 标签
  • 所以,我完全错了!这很有意义,现在!
  • 这个问题被否决了?这是一个诚实的问题。我该如何改进它?
  • methinks downvoted 因为它似乎重复:您可以在侧边栏中的 Related 问题中看到,并且可能您可以在提问之前找到答案
  • 是的,我认为问题在于,作为一个初学者,我几乎没有词汇量,所以,通过阅读相关/类似的问题,我可以看到它们是如何应用的,但没有给出我需要的那种清晰度。显然,Stack Overflow 不适合提出“我认为我在球场上,但我需要一些保证”之类的问题。一旦我从其他资源中学到了更多,我可能会回来。六个月后见! ...如果不是更早的话。

标签: javascript jquery this


【解决方案1】:

javascript 中的“this”指的是函数调用的上下文。 “this”的值取决于调用者如何调用该方法。对于 jQuery,当它调用事件处理程序时,它会将“this”设置为作为事件目标的 DOM 元素。

$(this) 将此 DOM 元素包装在 jQuery 对象中,以便您可以对它使用 jQuery 方法。

$("p") 选择 DOM 中的所有段落元素。

$(this) 仅选择作为单击事件目标的元素。

$("p").slideUp() 会影响页面上的所有段落元素。

$(this).slideUp() 只会影响作为点击事件目标的单个元素。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-19
    • 2011-12-06
    • 1970-01-01
    • 2011-01-28
    • 2015-08-22
    • 2011-11-08
    • 1970-01-01
    相关资源
    最近更新 更多