谁能告诉我以下问题在哪里?我希望系统在循环中提醒每个列表项的锚文本,但想不出如何构造“this”语法?
$('.jsGrid ul li').each(function(index) {
alert(index + ': ' + $('this .overlayContent a').text());
});
干杯保罗
谁能告诉我以下问题在哪里?我希望系统在循环中提醒每个列表项的锚文本,但想不出如何构造“this”语法?
$('.jsGrid ul li').each(function(index) {
alert(index + ': ' + $('this .overlayContent a').text());
});
干杯保罗
this
是一个变量,不会在字符串中被识别。围绕它构造 jQuery 对象并使用它find
来获取您正在寻找的锚元素:
alert(index + ': ' + $(this).find('.overlayContent a').text());
如果你搜索$("this .overlayContent a")
- jQuery 会寻找这样构造的元素:
<this>
<div class='overlayContent'><a>Some text here</a></div>
</this>
alert(index + ': ' + $('.overlayContent a',this).text());
$('.jsGrid ul li').each(function(index) {
alert(index + ': ' + $(this).find('.overlayContent a').text());
});
你不能像这样使用这个关键字。而是使用这个
$('.jsGrid ul li').each(function(index) {
alert(index + ': ' + $('this').find('a').text());
});
或者你可以这样做'
$('.jsGrid ul li').each(function(index) {
alert(index + ': ' + $('this').children().text());
});