javascript - JQuery addClass 不适用于点击事件上的 anchor 标记

标签 javascript jquery html css singleton

addClass() 在 jQuery 上的单击事件上不起作用。我的代码如下所示。

init: function () {
      ShareData.config.pageNo = 1;
      ShareData.ajaxCall();
      $(document).on('click', 'ul#pagination li a', function () {
          ShareData.config.pageNo = $(this).text();
          ShareData.ajaxCall();
          $("ul#pagination li a.clickedLink").removeClass("clickedLink");
          $(this).addClass('clickedLink');
      });
  },
  
var pageLink = "";
for (var i = 1; i <= totalPage; i++) {
    if (i == 1) {
        pageLink += "<li><a href='#' class='clickedLink'>" + i + "</a></li>";
    } else {
        pageLink += "<li><a href='#' class=''>" + i + "</a></li>";
    }
}
document.getElementById('pagination').innerHTML = pageLink;
.pagination ul li a.clickedLink {
    background-color: #BBB;
}

.pagination ul li a{
    color: #000;
    height: 24px;
    line-height: 24px;
    width: 24px;
    text-align: center;
    display: inline-block;
    text-decoration: none;
    border: 1px solid #000;
    background: #FFF;
    text-shadow: none;
}
.pagination ul li {
    float: left;
}
<div class="pagination">
    <ul id="pagination">
    </ul>
</div>

输出是这样的

html table with pagination 加载时一切正常,但我需要更改最近单击的 anchor 标记的背景。

最佳答案

这里有一个解决方案 https://jsfiddle.net/dk5n4695/2/

$('a').click(function(){
  $('a[class="clickedLink"]').removeClass('clickedLink');
  $(this).addClass('clickedLink');
});
.clickedLink {
    background-color: #BBB;
}

ul li a{
    color: #000;
    height: 24px;
    line-height: 24px;
    width: 24px;
    text-align: center;
    display: inline-block;
    text-decoration: none;
    border: 1px solid #000;
    background: #FFF;
    text-shadow: none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
  <li><a href="#">1</a></li>
  <li><a href="#">2</a></li>
  <li><a href="#">3</a></li>
</ul>

关于javascript - JQuery addClass 不适用于点击事件上的 anchor 标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45474551/

相关文章:

javascript - 如何让这个脚本只执行一次?

javascript - 如何使用 React JS 将 FusionTablesLayer 放入 Google Maps API 中?

javascript - JQuery 仅在复选框被选中时切换..可能吗?

jquery - 延迟缩小元素高度

javascript - 渲染存在于 jquery 自动完成数据中的 html 元素

html - Isotope + Wordpress 排版模式

javascript - 居中文件输入 Bootstrap

javascript - 将选择列表中的元素解析为 $_POST 以写入数据库

html - CSS Z 索引异常

html - 当我已经在使用 ng-model 和 ng-value 时,我想用后面的数据检查我的单选按钮