1

假设我的部分包含“红色”、“绿色”和“蓝色”页面。每个页面都有 H1 标签中的标题以及显示所有三个链接的共享#sidebar 导航。如何让 jQuery 检测在 H1 中输入的文本,在#sidebar 中找到相同的文本,并在找到匹配项时向#sidebar 链接添加一个类?

HTML:

<h1>Red</h1>
<div id="sidebar">
  <a href="#">Red</a><br>
  <a href="#">Green</a><br>
  <a href="#">Blue</a>
</div>

CSS:

#sidebar { float: right; }
.current-section { background: red; }

抱歉 - 我充其量只是一个 jQuery 初学者。这是一个小提琴:http: //jsfiddle.net/BxCgT/

4

1 回答 1

2

像这样的东西可能会起作用......

// get title text
var title = $('h1').text();
// loop anchors in #sidebar
$('#sidebar a').each(function() {
   // if anchor text matches title
   if($(this).text() == title) {
     // add a class
     $(this).addClass(<yourclass>);
   }
});

相关文档 ->和.text() .each().addClass()

我假设您的代码看起来像这样:

<h1>Red</h1>
<div id="sidebar">
   <a href="red.html">Red</a><br>
   <a href="green.html">Green</a><br>
   <a href="blue.html">Blue</a>
</div>

工作示例

于 2013-01-17T11:59:26.560 回答