首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >突出显示所选页码的有效方法是什么?

问突出显示所选页码的有效方法是什么?
EN

Stack Overflow用户
提问于 2011-09-21 17:51:17
回答 4查看 274关注 0票数 1

我在一个html页面的<li>中有一些数字,这些数字代表页面的数量:

代码语言:javascript
复制
<ol id="numbers">

     <li class="idx">1</li>
     <li class="idx">2</li>
      ...
      ...
     <li class="idx">n</li>                         
</ol>

页数是动态变化的,如何使用jQuery将点击的页码文本加粗,而使其他页码文本保持默认字体样式?当选择了新的页码时,是否必须使用for循环将未选中的页码更改为默认样式?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-09-21 17:56:04

http://jsfiddle.net/qE3Qm/2/

更好的解决方案是让.active css类具有活动页面的样式。并将其设置为单击:

代码语言:javascript
复制
$('#numbers li').click(function() {
    $('#numbers li.active').removeClass('active');
    $(this).addClass('active');
});
票数 3
EN

Stack Overflow用户

发布于 2011-09-21 17:55:03

您可以使用一个简单的toggleclass函数,并为其添加粗体样式。

代码语言:javascript
复制
<style>
  .highlight {font-weight:bold; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>

<body>
  <p class="blue">Click to toggle</p>
  <p class="blue highlight">highlight</p>
  <p class="blue">on these</p>
  <p class="blue">paragraphs</p>
<script>
    $("p").click(function () {
      $(this).toggleClass("highlight");
    });
</script>
</body>

但我的版本只突出显示当前选择的li,并将其他列表项保留在以前的状态,因此如果该列表项是以前选择的,则此代码不会更改以前的状态。如果您只需要突出显示一个项目,那么最好的方法是从所有列表项中删除粗体样式,然后按照每个人之前的建议,向当前选定的项目添加粗体样式。

票数 0
EN

Stack Overflow用户

发布于 2011-09-21 17:55:22

假设存在一个包含您的样式的类.bold:

代码语言:javascript
复制
$("#number li").click(function() {
    $(this).addClass("bold").siblings().removeClass("bold");
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7497825

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档