如果项目不匹配,则显示变量
Show var if item doesn't match
我正在使用Feedburner来显示feed。有时源具有相同的文本。我想"隐藏"某个提要的任何"重复项"。我已经将feedburner脚本包装在一个div"unique"中,如下所示:jsFiddle
我已经为提要设置了显示:无,因为我只想显示与"索引"匹配的提要。我不明白为什么 var 没有"显示"
我认为.text()
查询不正确。
var a = $('.unique a').text();
上面只返回文本:
Man dood na val in liftschacht RotterdamBulgarije geeft foto vrij van tweede verdachte bomaanslagStraat ontruimd bij grote brand OverdinkelAsiel Assange verandert niets voor LondenMoordenaar honkballer Halman op vrije voetenGrote brand in Overdinkel'Broer vermoorde honkballer ontoerekeningsvatbaar'Boete voor RET om studentenreisgegevensDode bij crash vliegtuigje BiddinghuizenMinder Tienermoeders dan ooit in Nederland
a
中没有任何内容可以迭代。
我想你可能想做:
var a = $('.unique a');
这将返回您现在可以迭代的项目列表。
我可以看到的下一个问题是,您的过滤器方法只是遍历 12 个项目的数组,并且仍然返回相同的 12 个项目,索引处的项目将始终与当前项目匹配。
试试这个解决方案:
$(document).ready(function() {
var $a = $('.unique a');
var unique = {};
for (i = 0; i < $a.length; i++) {
var itemText = $($a[i]).text();
if (unique[itemText]) {
$($a[i]).remove();
}
else {
unique[itemText] = true;
}
};
$('.unique').show();
});
查看演示
我声明unique
为对象。此对象将保留我们已经处理的每个锚文本值的记录,方法是将itemtext
添加为分配 of true
的属性。这是可能的,因为JavaScript的动态性质允许您动态地为对象分配过程。
Boete voor RET om studentenreisgegevens true,
Bulgarije geeft afbeelding vrij van verdachte aanslag true,
厄瓜多尔 verleent 维基解密-baas 朱利安·阿桑奇 政治家 阿西尔 真
调用unique[itemText]
时,我们要求unique
对象为我们提供属性的值,其名称与itemText
中的内容相匹配。
如果属性存在,则返回值true
,因为这是我们分配给属性的值。我们现在将从源中删除该值,因为我们已经处理了它。
如果未找到该属性,则返回undefined
,我们将属性动态添加到unique
对象,为其分配 true
的值。
源中的重复项,我们使容器再次可见。
- 单击“JavaScript显示变量”
- Cartodb信息窗口未在地图上显示变量
- 如何更新和显示变量
- 如果项目不匹配,则显示变量
- 在 HTML 中显示变量的好做法是什么?
- 在 Javascript 中,值不来,而是显示变量名称
- 缩短角度显示变量
- 如何使用Tinybox显示变量
- 在不同条件下显示变量的不同值
- console.log() 在变量值实际更改之前显示变量的更改值
- 引导程序引导盒在消息中显示变量
- 仅显示变量内的一段文本
- 我想使用 innerHTML 显示变量的值,但我的代码不起作用
- 使用带有按钮的JS函数来显示变量
- 无法使用车把正确在我的“模板”中显示变量.js
- 选中选择框选项时显示变量
- 如何使用显示变量url的iframe打开引导模式
- 我想显示变量'b[i]'而不是'x[i].childNodes[0].nodeValue'
- 数字框jeasyui没有显示变量中的值
- 如何在AngularJS网站中显示变量的名称