我觉得有点傻,我试着在这里找到答案,但找不到合适的东西。希望可以有人帮帮我。
我只是想尝试匹配两个不同的变量,所以如果它们是相同的,则一个项应该会收到一个新的类:
var recentposttitle = $('#catblogoutput h2.post-title').text();
$('#sub-nav ul li a').each(function() {
var subnavlink = $(this).attr('title');
if (subnavlink == recentposttitle) {
$(this).addClass('selected');
}
});
嗯它不起作用。知道为什么吗?欣赏它!
答案 0 :(得分:0)
你的问题在于:
var recentposttitle = $('#catblogoutput h2.post-title').text();
我认为这不是你想要的。根据jquery文档,.text()函数定义为:
描述:获取集合中每个元素的组合文本内容 匹配元素,包括他们的后代。
这应该指向你的答案
答案 1 :(得分:0)
答案 2 :(得分:0)
代码看起来是正确的,现在我们需要查看标记,因为代码段中的查询无法匹配文档中的任何内容,具体取决于它是什么。
对于类似这样的事情,firebug或开发人员工具以及迭代中的断点应该可以立即进行排序。
答案 3 :(得分:0)
同意。您的代码有效。
尝试将字符串打印到控制台以获取帮助。可能是,他们不匹配。
var recentposttitle = $('#catblogoutput h2.post-title').text();
$('#sub-nav ul li a').each(function(){
var subnavlink = $(this).attr('title');
console.log("Post Title: '" + recentposttitle + "'");
console.log("Menu Link: '" + subnavlink + "'");
if(subnavlink==recentposttitle){
$(this).addClass('selected');
}
});