源代码-jquery closest的疑问

问题描述

jquery closest的疑问
jquery中的closest方法可以用来查找制定的父类元素,并可以设置查询的上下文context,不过如果context正好是closest找的父类的话,貌似会被过滤掉,不知道是否是jquery的问题还是我理解有问题。代码如下:

jquery:

 var contextElem = document.getElementById(""row1"");                 $(""img"").closest("".drow""contextElem).each(function(indexelement){                    console.log(""Element:"" + element.tagName + "" "" + element.id + "" "" + element.className);                 });<div id=""oblock"">            <div class=""dtable"">            <div id=""row1"" class=""drow"">                <div class=""dcell"">                    <img src="".精通jQurery(2版)源代码Chapter 06aster.png""/><label for=""aster"">aster:</label>                    <input name=""aster"" value=""0"" required>                </div>                <div class=""dcell"">                    <img src="".精通jQurery(2版)源代码Chapter 06daffodil.png""/><label for=""daffodil"">daffodil:</label>                    <input name=""daffodil"" value=""0"" required>                </div>                <div class=""dcell"">                    <img src="".精通jQurery(2版)源代码Chapter 06
ose.png""/><label for=""rose"">rose:</label>                    <input name=""rose"" value=""0"" required>                </div>            </div>            <div id=""row2"" class=""drow"">                <div class=""dcell"">                    <img src="".精通jQurery(2版)源代码Chapter 06peony.png""/><label for=""peony"">peony:</label>                    <input name=""peony"" value=""0"" required>                </div>                <div class=""dcell"">                    <img src="".精通jQurery(2版)源代码Chapter 06primula.png""/><label for=""primula"">primula:</label>                    <input name=""primula"" value=""0"" required>                </div>                <div class=""dcell"">                    <img src="".精通jQurery(2版)源代码Chapter 06snowdrop.png""/><label for=""snowdrop"">snowdrop:</label>                    <input name=""snowdrop"" value=""0"" required>                </div>            </div>            </div>        </div>

输出的结果是:elementId 是row2;
安jquery的描述应该是返回row1才对。。。谁可以帮忙解释下,谢谢!

解决方案

http://www.w3school.com.cn/jquery/traversing_closest.asp

解决方案二:
http://www.w3school.com.cn/jquery/traversing_closest.asp

解决方案三:
http://www.w3school.com.cn/jquery/traversing_closest.asp

解决方案四:
jQuery中的closest()和parents()的区别
jquery parents closest

解决方案五:
你指定了上下文,可定是在context下找了,你看源代码就清楚了

    var pos = jQuery.expr.match.POS.test( selectors ) ?             jQuery( selectors context || this.context ) : null;        return this.map(function( i cur ) {            while ( cur && cur.ownerDocument && cur !== context ) {                if ( pos ? pos.index(cur) > -1 : jQuery(cur).is(selectors) ) {                    return cur;                }                cur = cur.parentNode;            }            return null;        });
时间: 2024-10-03 20:02:19

源代码-jquery closest的疑问的相关文章

indows编程 句柄-关于winnt.h头文件中有关句柄(HANDLE)的一段源代码的两个疑问,求大神解答。

问题描述 关于winnt.h头文件中有关句柄(HANDLE)的一段源代码的两个疑问,求大神解答. 大家好!我对winnt.h中的这段代码有疑问: #ifdef STRICT typedef void *HANDLE; #if 0 && (_MSC_VER > 1000) #define DECLARE_HANDLE(name) struct name##__; typedef struct name##__ *name #else #define DECLARE_HANDLE(nam

JQuery.closest(),parent(),parents()寻找父结点_jquery

HTML代码,测试地址:jQuery 遍历 - closest() 方法 ------我粘代码上来,在页面上会自动隐藏(会显示一下)!谁能教我这是肿么回事! 1.通过item-1查找 level-3(查找直接上级) 复制代码 代码如下: $('li.item-1').closest('ul') $('li.item-1').parent() $('li.item-1').parents().eq(0) 2.通过item-1查找 level-2(通过选择器查找父元素) 复制代码 代码如下: $('

jquery mobile-jQuery moblie滑动的疑问。。。求大神

问题描述 jQuery moblie滑动的疑问...求大神 求助,使用jQuery moblie的swipe事件,有时候滑动屏幕没反应,多次滑动后一起积累触发多次滑动,这个问题该怎么解决呢?谢谢... 代码:3张图片滑动效果 js代码: $("body").on("swipeleft",function(){ //alert("zuo"); if(num>=3) return; num++; if(num==2){ $('#bgImg').

jQuery 遍历- 关于closest() 的方法介绍以及与parents()的方法区别分析_jquery

closest() 方法获得匹配选择器的第一个祖先元素,从当前元素开始沿 DOM 树向上. 语法: .closest(selector) 参数selector为字符串值,包含匹配元素的选择器表达式. 如果给定表示 DOM 元素集合的 jQuery 对象,.closest() 方法允许我们检索 DOM 树中的这些元素以及它们的祖先元素,并用匹配元素构造新的 jQuery 对象..parents() 和 .closest() 方法类似,它们都沿 DOM 树向上遍历.两者之间的差异尽管微妙,却很重要:

UVa 10245:The Closest Pair Problem

[链接] http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=113&page=show_problem&problem=1186 [原题] Given a set of points in a two dimensional space, you will have to find the distance between the closest two points.

UVa 10487 Closest Sums:遍历&amp;amp;二分查找

10487 - Closest Sums Time limit: 3.000 seconds http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=113&page=show_problem&problem=1428 Given is a set of integers and then a sequence of queries. A query gives you a

源代码-百度首页中的js为什么那么复杂?

问题描述 百度首页中的js为什么那么复杂? 各大网站中,使用浏览器查看网页源代码时,查看其编写的js文件发现好复杂.应该怎么研讨这些js文件?还是公司为了不被人读懂故意把js弄成无结构复杂的?例:www.baidu.com然后查看html的源代码中的js:http://s1.bdstatic.com/r/www/cache/static/jquery/jquery-1.10.2.min_f2fb5194.js发现看不懂,真的太复杂了,求科普. 解决方案 !-- 这个是压缩后的js(去除空白,换行

使用JQuery实现的分页插件分享_jquery

一个简单的jQuery分页插件,兼容AMD规范和requireJS. /** * jQuery分页插件 * */ ;(function (factory) { if (typeof define === "function" && define.amd) { // AMD模式 define([ "jquery" ], factory); } else { // 全局模式 factory(jQuery); } }(function ($) { //定义

JavaScript学习总结(五)——jQuery插件开发与发布

jQuery插件就是以jQuery库为基础衍生出来的库,jQuery插件的好处是封装功能,提高了代码的复用性,加快了开发速度,现在网络上开源的jQuery插件非常多,随着版本的不停迭代越来越稳定好用,在jQuery官网有许多插件: 一.插件开发基础 1.1.$.extend 在jQuery根命名空间下直接调用的方法可以认为是jQuery的静态方法或属性,常常使用$.方法名来调用,使用$.extend这个静态方法可以完成两个功能: 1.1.1.扩展属性或方法给jQuery 比如我们想给jQuery