首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >arguments.callee做什么(“span:最后一个孩子”)?

arguments.callee做什么(“span:最后一个孩子”)?
EN

Stack Overflow用户
提问于 2009-05-26 19:27:31
回答 5查看 3.6K关注 0票数 2
代码语言:javascript
运行
复制
$("span:last-child").hide("fast", function () {
        $(this).prev().hide("fast", arguments.callee); 
    });

我无法理解代码中的这一点:

  1. ("span:last-child"):this?
  2. arguments.callee:是什么这是什么
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-05-26 19:36:18

$是主要的jQuery函数。

$("span:last-child")搜索其父级的最后一个子标记的任何<span>标记。

发现:

代码语言:javascript
运行
复制
<div><span>some data </span> something else <span>testing</span></div>

它将找到包含testing但不包括some data的范围。

然后它隐藏了它找到的那些跨度。要隐藏的第二个参数是动画之后的回调。该回调会转到“前一个”子节点(‘That’文本节点),隐藏它并将“被叫函数”(arguments.callee)作为回调传递。这使得这是一个“递归”函数。

这将隐藏以<span>作为最后一个子块的所有块的全部内容。

票数 8
EN

Stack Overflow用户

发布于 2009-05-26 19:32:31

  1. ("span:last-child") means "if this span is the last child of its parent
  2. arguments.callee allows a function to call itself
票数 7
EN

Stack Overflow用户

发布于 2009-05-26 19:35:18

("span:last-child")返回作为父元素的最后一个子元素的所有span元素。arguments.callee看起来像是试图将函数本身传递给下一个函数。实质上,它传递一个函数指针。看起来它所做的就是找到span对象,然后递归地隐藏所有以前的兄弟姐妹。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/912261

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档