Jquery 如何在parent by.get()检索到元素后通过选择器获取元素
我使用的是Jquery 如何在parent by.get()检索到元素后通过选择器获取元素,jquery,flexslider,Jquery,Flexslider,我使用的是var slide=($('#li').get(currentSlide))。这使我获得以下html: <li> <article> <img src="http://localhost/..."> <div class="flex-caption"> <h1 class="caption-heading">Patio </h1> &
var slide=($('#li').get(currentSlide))代码>。这使我获得以下html:
<li>
<article>
<img src="http://localhost/...">
<div class="flex-caption">
<h1 class="caption-heading">Patio </h1>
<p class="caption-description">Enclosed patio...</p>
</div>
</article>
</li>
露台
封闭式天井
使用myvar slide
获取标题
和标题描述
文本的jQuery是什么
我有超过12个这样的类,所以我只需要一个我使用变量currentSlide
检索到的类,您可以使用它来获取文本
$('caption-heading').text()
要查找可以使用的特定元素
您可以使用来获取文本
$('caption-heading').text()
要查找可以使用的特定元素
只需使用查找:
slide.find('caption-heading').text()
只需使用查找:
slide.find('caption-heading').text()
使用幻灯片变量:
(请注意,如果slide是DOM元素而不是jQuery对象,则必须执行$(slide).find()…
)
或者像注释中提到的@tcovo一样,您可以使用上下文选择器执行此操作:
var caption-heading = $("h1.caption-heading", slide).text();
var caption-description = $("p.caption-description", slide).text();
如果幻灯片元素有多个标题,可以使用.eq()函数检索所需的标题。假设它有3个h1.caption-heading元素,您可以执行以下操作来获得第二个元素:
var caption-description = slide.find("h1.caption-heading").eq(1).text();
使用幻灯片变量:
(请注意,如果slide是DOM元素而不是jQuery对象,则必须执行$(slide).find()…
)
或者像注释中提到的@tcovo一样,您可以使用上下文选择器执行此操作:
var caption-heading = $("h1.caption-heading", slide).text();
var caption-description = $("p.caption-description", slide).text();
如果幻灯片元素有多个标题,可以使用.eq()函数检索所需的标题。假设它有3个h1.caption-heading元素,您可以执行以下操作来获得第二个元素:
var caption-description = slide.find("h1.caption-heading").eq(1).text();
因为您使用的是.get()
,所以幻灯片变量将是DOM元素,而不是jQuery对象。因此,您不能像其他答案所建议的那样,直接在其上调用.find()
。但是具有上下文语法的jQuery选择器可以工作:
var caption-heading = $("h1.caption-heading", slide).text();
或者,您可以使用.eq()
而不是.get()
(),以便幻灯片是jQuery对象:
var slide = $('#accommodation-flexslider li').eq(currentSlide);
var caption-heading = slide.find("h1.caption-heading").text();
因为您使用的是.get()
,所以幻灯片变量将是DOM元素,而不是jQuery对象。因此,您不能像其他答案所建议的那样,直接在其上调用.find()
。但是具有上下文语法的jQuery选择器可以工作:
var caption-heading = $("h1.caption-heading", slide).text();
或者,您可以使用.eq()
而不是.get()
(),以便幻灯片是jQuery对象:
var slide = $('#accommodation-flexslider li').eq(currentSlide);
var caption-heading = slide.find("h1.caption-heading").text();
另一种语法是带有上下文的jQuery选择器:$(“h1.caption heading”,slide).text()代码>。使用此表单,slide
不必是jQuery对象,它可以是DOM元素..find不起作用,我想就像上面有人说的,它是一个DOM元素,而不是jQueryobject@Nicola我把它放在另一个答案中,解释了为什么查找不起作用。@Nicola将slider.find()替换为$(slider.find())使查找有效另一种语法是jQuery选择器,上下文为:$(“h1.caption heading”,slide).text()代码>。使用此表单,slide
不必是jQuery对象,它可以是DOM元素..find不起作用,我想就像上面有人说的,它是一个DOM元素,而不是jQueryobject@Nicola我把它放在另一个答案中,解释为什么find不起作用。@Nicola用$(slider.find()替换slider.find(),find()使find起作用