首页
学习
活动
专区
圈层
工具
发布

JS和JQuery获取当前元素的兄弟及父级等元素的方法

) jQuery.parents(expr),类似于 jQuery.parents(expr) ,但是是查找所有祖先元素,不限于父元素 jQuery.children(expr),返回所有子节点,这个方法只会返回直接的孩子节点...,而 jQuery.find(),的返回结果,不会有初始集合中的内容,比如 $("p").find("span") ,是从 元素开始找 ,等同于 $("p span") JS获取:...var chils= s.childNodes;  //得到s的全部子节点 var par=s.parentNode;   //得到s的父节点 var ns=s.nextSibling;   //获得...;   //获得s的最后一个子节点 JS获取节点父级,子级元素:JS的方法会比JQUERY麻烦很多,主要则是因为FF、谷歌浏览器会把你的换行也当作DOM元素:空的text元素,目前IE也是这样       原生的JS获取ID为test的元素下的子元素。

14.2K10

事件对象的使用、属性和方法

1 event.target代表当前触发事件的元素,可以通过当前元素对象的一系列属性来判断是不是我们想要的元素 2 target属性可以是注册事件时的元素或者子元素,通常用于比较event.target...事件对象只有事件发生时才会产生,并且只能是事件处理函数内部访问,在所有事件处理函数运行结束后,事件对象就被销毁 4 jQuery事件对象的作用 li都有一个共同的父元素,而且所有的事件都是一致的...,如果点击一个链接(a标签),浏览器不会跳转到新的 URL 去,可以用 event.isDefaultPrevented() 来确定这个方法是否(在那个事件对象上)被调用过了 8 event.stopPropagation...()阻止事件冒泡,为防止事件冒泡到DOM树上,也就是不触发的任何前辈元素上的事件处理函数 9 event.which获取在鼠标单击时,单击的是鼠标的哪个键 10 event.which...jquery对象,比如this和$(this)的使用、event.target和$(event.target)的使用 转帖:http://blog.51cto.com/lakaodekaola/2085868

2.2K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    继续死磕前端

    //方式2 获取元素的索引值可以使用 index() 方法 1.3 jquery 动画 通过 animate 方法可以设置元素某属性值上的动画,动画执行完后会执行一个函数。...(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,那么这个事件会向这个对象的父级对象传播,从里到外,直至它被处理...(父级对象所有同类事件都将被激活),或者它到达了对象层次的最顶层,即document对象(有些浏览器是window)。...答:事件冒泡允许多个操作被集中处理(把事件处理器添加到一个父级元素上,避免把事件处理器添加到多个子级元素上),它还可以让你在对象层的不同级别捕获事件。...,把事件加到父级上,通过判断事件来源的子集,执行相应的操作,事件委托首先可以极大减少事件绑定次数,提高性能;其次可以让新加入的子元素也可以拥有相同的操作。

    3.7K10

    jQuery 事件(三) 事件的绑定和解绑、对象的使用、自定义事件

    ,off方法也可以通过相应的传递组合的事件名,名字空间,选择器或处理函数来移除绑定在元素上指定的事件处理函数。...因为li都有一个共同的父元素,而且所有的事件都是一致的,这里我们可以采用要一个技巧来处理,也是常说的”事件委托” 事件没直接和li元素发生关系,而且绑定父元素了。...事件对象只有事件发生时才会产生,并且只能是事件处理函数内部访问,在所有事件处理函数运行结束后,事件对象就被销毁 事件对象是跟当前触发元素息息相关的,能从里面获取相关的信息,找到 event.target...为防止事件冒泡到DOM树上,也就是不触发的任何前辈元素上的事件处理函数 event.which:获取在鼠标单击时,单击的是鼠标的哪个键 event.which 将 event.keyCode 和 event.charCode...() 会影响所有与 jQuery 对象相匹配的元素,而 .triggerHandler() 仅影响第一个匹配到的元素 使用 .triggerHandler() 触发的事件,并不会在 DOM 树中向上冒泡

    4.9K30

    JQuery高级

    jQuery中定义变量的时候,一般命名用$开头。同事一看就知道是使用了jQuery,然后使用jQuery的语法。 其实$是jQuery中的一个函数。...***事件冒泡 现象:父子级标签 触发子级的事件,这个事件会逐层向父级传递。 子集执行了某一事件,会逐层向上触发相同事件,直到被处理或者遇到return。...比如子级有单击事件,那么父级如果有单击事件也会被触发,父级的父级如果有单击事件也会被触发。 任何一个操作,计算机或者浏览器都会去处理。不管你有没有设置对应的事件。...body> 1 3.事件委托 把子级的事件委托给父级...(父:最近的能包含住将来发生事件的所有子级)------ 事件代理 .delegate(真实发生事件的目标,字符串事件属性,匿名函数去写命令function(){}) 工作中有可能会有人用这个词on()

    2K50

    JQuery

    1显示隐藏功能 但凡有两个函数完成的功能是相反的,比如一个显示一个隐藏,那么肯定会有第三个函数的效果是前两个函数的和。也就是说两个单词是反义词,那么肯定会有第三个单词,而且都和toggle有关。...xx,父级执行了命令 find选中子集执行了命令 下面的选择器很重要 .parent()选择元素的父元素 可以先用一个this,然后找到这个元素的父级。...***事件属性 click() 鼠标单击 ready() DOM加载完成 blur() 元素失去焦点 focus()元素获得焦点 submit()用户提交表单 hover()同时为mouseenter...()鼠标离开(离开子元素不触发) 上面的这些鼠标移入和离开,触发和不触发指的是不再次触发父级。...验证两组不一样的时候,鼠标先进入父级,再进入子级,然后没有再次触发,验证成功。如果是直接进入子级的话,因为子级和父级是一体的,会触发。 <!

    8.4K20

    【前端】详解JavaScript事件代理(事件委托)

    事件代理即是利用事件冒泡的机制把里层所需要响应的事件绑定到外层; 事件代理利用了事件冒泡的原理。通过在父元素上设置监听器,可以捕获到在其子元素上触发的事件。...因为事件会从子元素冒泡到父元素,所以父元素上的监听器可以处理这些事件。 优点 减少内存消耗:不需要为每个子元素分别添加事件监听器。 提高性能:特别是在动态生成的元素上,不需要为新元素重新绑定事件。...如果用了事件委托就没有这种麻烦了,因为事件是绑定在父层的,和目标元素的增减是没有关系的,执行到目标元素是在真正响应执行事件函数的过程中去匹配的;所以使用事件在动态绑定事件的情况下是可以减少很多重复工作的...事件delegate()实现 delegate() 方法为指定的元素(属于被选元素的子元素)添加一个或多个事件处理程序,并规定当这些事件发生时运行的函数。...event:必需,规定附加到元素的一个或多个事件。由空格分隔多个事件值。必须是有效的事件。 data:可选,规定传递到函数的额外数据。 function:必需,规定当事件发生时运行的函数。 <!

    1.7K10

    jQuery中on()、bind()、live()、delegate()之间的区别

    事件冒泡 当我们点击一个链接时,其触发了链接元素的单击事件,该事件则引发任何我们已绑定到该元素的单击事件上的函数的执行。...; }); 因此一个单击操作会触发alert函数的执行。 ?...click事件接着会向树的根方向传播,广播到父元素,然后接着是每个祖先元素,只要是它的某个后代元素上的单击事件被触发,事件就会传给它。 ? 在操纵DOM的语境中,document是根节点。...,但是根据官网解释,自从jquery1.7版本以后bind()函数推荐用on()来代替。...; }); 当我们在a 上面点击的时候,首先会触发它本身所绑定的click事件,然后会一路往上,触发它的父元素,祖先元素上所有绑定的click事件。

    1.8K30

    JQuery最全常用方法指南

    在每个对 象上,这个事件处理函数只会被执行一次。其他规则与bind()函数相同。 trigger(type, [data]) 在每一个匹配的元素上触发某类事件。...(fn); //为id为msg的元素单击事件添加函数 同样blur, focus, select, submit事件都可以有着两种调用方法 5、集合处理功能 对于jquery返回的集合内容无需我们自己循环遍历并对每个对象分别做处理...,我们无需在html元素上直接写事件,而可以直接为通过jquery获取的对象添加事件。...当鼠标移动到一个匹配的元素上面时,会触发指定的第一个函数。当鼠标移出这个元素时,会触发指定的第二个函数。 //当鼠标放在表格的某行上时将class置为over,离开时置为out。...p元素上的所有事件 $("p").unbind("click") //删除所有p元素上的单击事件 10、几个实用特效功能 其中toggle()和slidetoggle()方法提供了状态切换功能。

    13.2K31

    杨老师课堂之Jquery的筛选,事件,效果,Ajax,javascript跨域)

    可以在父元素上检测子元素获取焦点的情况。...off(events,[selector],[fn]),在选择元素上移除一个或多个事件的事件处理函数。 bind(type,[data],fn)为每个匹配元素的特定事件绑定事件处理函数。...事件,而不触发 和元素上的 click事件.当单击 元素时,只触发 元素上的click事件, 而不触发元素上的click事件....; event.stopPropagation();//停止冒泡事件 }) 当单击span元素时,只会触发span元素上的click事件,而不会触发 div元素和body元素的click事件....可以用同样的方法解决 元素上的问题 阻止默认行为 网页中的元素都有自己默认的行为,例如:单击超链接后悔跳转,单击”提交”按钮会表单会提交,有时需要阻止元素的默认行为 在jquery中,提供了preventDefault

    10.2K20

    【大家的项目】可 Deferred 就绪的 Future 实现类

    deferred-future 模仿jQuery.Deferred(),允许 【地点】从Future实现类实例外部 【时间】异步地 改变当前Future对象的Polling状态从Poll::Pending...就多线程而言,当前执行上下文就是“父异步块”,和异步阻塞上一级异步块。 下面仔细看代码例程。请特别留意注释说明。...let start = Instant::now(); let message = deferred_future.await; // (4.1) 会造成上一级异步块的异步阻塞 let...let defer = deferred_future.defer(); // (3) 给按钮 DOM 元素添加一个鼠标单击事件。仅当按钮被单击时,才填入`Future::Output`输出值。...::on(&button, "click", Options::enable_prevent_default(true), move |event| { // (3.1) 在 DOM 事件处理函数内

    48710

    【大家的项目】可 Deferred 就绪的 Future 实现类

    deferred-future 模仿jQuery.Deferred(),允许 【地点】从Future实现类实例外部 【时间】异步地 改变当前Future对象的Polling状态从Poll::Pending...就多线程而言,当前执行上下文就是“父异步块”,和异步阻塞上一级异步块。 下面仔细看代码例程。请特别留意注释说明。...let start = Instant::now(); let message = deferred_future.await; // (4.1) 会造成上一级异步块的异步阻塞 let...let defer = deferred_future.defer(); // (3) 给按钮 DOM 元素添加一个鼠标单击事件。仅当按钮被单击时,才填入`Future::Output`输出值。...::on(&button, "click", Options::enable_prevent_default(true), move |event| { // (3.1) 在 DOM 事件处理函数内

    42610

    JQuery第三节

    】 1.5. offset方法与position方法 offset方法获取元素距离document的位置,position方法获取的是元素距离有定位的父元素的位置。...//获取元素距离document的位置,返回值为对象:{left:100, top:100} $(selector).offset(); //获取相对于其最近的有定位的父元素的位置。...2.1. jQuery事件发展历程(了解) 简单事件绑定>>bind事件绑定>>delegate事件绑定>>on事件绑定(推荐) 简单事件注册 click(handler) 单击事件...// 第三个参数:data,传递给处理函数的数据,事件触发的时候通过event.data来使用(不常使用) // 第四个参数:handler,事件处理函数 $(selector).on(events[,...作用:遍历jQuery对象集合,为每个匹配的元素执行一个函数 // 参数一表示当前元素在所有匹配元素中的索引号 // 参数二表示当前元素(DOM对象) $(selector).each(function

    1.1K30

    【前端】Web前端学习笔记【1】

    DOM 需要了解要删除的元素,以及它的父元素。...================================================== 16. jQuery中的each函数 each() 方法规定为每个匹配元素规定运行的函数。   ...============================================ 18. jQuery能够绑定的事件主要包括: 鼠标事件 click: 鼠标单击时触发; dblclick:鼠标双击时触发...键盘事件 键盘事件仅作用在当前焦点的DOM上,通常是和。 keydown:键盘按下时触发; keyup:键盘松开时触发; keypress:按一次键后触发。...DOM0级事件处理程序会在其所属元素的作用域内运行;在使用attachEvent()方法的情况下,事件处理程序会在全局作用域中运行,因此this等于window。

    92290

    Python全栈之jQuery笔记

    () 表单元素的值发生变化 click() 鼠标单击 dblclick() 鼠标双击 当单击元素时,发生click事件....click()方法触发click事件,或规定当发生click事件时运行的函数....,那么此事件就会调用这个处理程序, 如果没有定义此事件处理程序或者事件返回true,那么这个事件会向这个对象的父级对象传播,从里到外,直至它被处理(父级对象所有同类事件都将被激活), 或者它到达了对象层次的最顶层...事件冒泡的作用: 事件冒泡允许多个操作被集中处理(把事件处理器添加到一个父级元素上,避免把事件处理器添加到多个子级元素上),它还可以让你在对象层的不同级别捕获事件....grunt、gulp grunt和gulp是使用node.js编写的,前端首选的自动化工具,gulp在书写配置上比grunt更简洁,运行的性能更高,gulp逐渐成为主流.

    6.7K40

    前端之jquery函数库

    动画   通过animate方法可以设置元素某属性值上的动画,可以设置一个或多个属性值,动画执行完成后会执行一个函数。...事件 事件函数列表: blur() 元素失去焦点 focus() 元素获得焦点 click() 鼠标单击 mouseover() 鼠标进入(进入子元素也触发) mouseout() 鼠标离开(离开子元素也触发...事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,那么这个事件会向这个对象的父级对象传播,从里到外,直至它被处理(父级对象所有同类事件都将被激活...事件冒泡的作用  事件冒泡允许多个操作被集中处理(把事件处理器添加到一个父级元素上,避免把事件处理器添加到多个子级元素上),它还可以让你在对象层的不同级别捕获事件。...,把事件加到父级上,通过判断事件来源的子集,执行相应的操作,事件委托首先可以极大减少事件绑定次数,提高性能;其次可以让新加入的子元素也可以拥有相同的操作。

    6K20

    学习jQuery这一篇就够了

    jQuery 核心对象:即执行 jQuery 核心函数返回的对象,jQuery 对象内部包含的是 dom 元素对象的伪数组 (可能只有一个元素),jQuery 对象拥有很多有用的属性和方法,让程序员能方便的操作...子元素筛选器 需求描述:选择所有父级元素 ul 下的第一个子元素 li,设置其背景为红色 我是列表项1 我是列表项2 我是列表项...3 我是列表项4 $('ul li:first-child').css('background', 'red'); 需求描述:选择所有父级元素 ul 下的最后一个子元素...如果传入一个 true,则表示是否会复制元素上的事件处理函数,从 jQuery 1.4 开始,元素数据也会被复制。...“resize” 事件绑定一个处理函数,或者触发元素上的该事件。

    3.5K50
    领券