我有三个td,我试图将每个内的功能限制为只有那个td。我该怎么做呢?使用此代码,它将所有3个图像并在h2之前插入所有图像
jQuery("td.frontpage_news").each(function() {
jQuery("span.frontpage_news p:first-child").has("a img").insertBefore("h2.contentheading.frontpage_news"); });
答案 0 :(得分:3)
您可以使用$(this)
获取each
当前正在处理的元素 - 将该对象与find结合使用可以调整您的通话范围:
jQuery("td.frontpage_news").each(function() {
var $that = jQuery(this);
var $thatHeading = $that.find("h2.contentheading.frontpage_news");
$that.find("span.frontpage_news p:first-child")
.has("a img").insertBefore( $thatHeading );
});
这假定内容标题和首页新闻项是td的子项。
答案 1 :(得分:1)
您可以不使用每种方法。 只需使用:
jQuery("td.frontpage_news span.frontpage_news p:first-child").has("a img").insertBefore("h2.contentheading.frontpage_news");
如果你真的需要使用每个,那么提供this
上下文到jquery来搜索
jQuery("td.frontpage_news").each(function() {
jQuery("span.frontpage_news p:first-child", this).has("a img").insertBefore("h2.contentheading.frontpage_news");
});
答案 2 :(得分:0)
试试这个:
jQuery("h2.contentheading.frontpage_news").before(jQuery("td.frontpage_news span.frontpage_news p:first-child").has("a img"));