【问题标题】:class not being added in ios on click of <a> tag单击 <a> 标签时未在 ios 中添加类
【发布时间】:2018-03-09 07:36:37
【问题描述】:

我有以下 jQuery 代码在单击锚标记时将类添加到锚标记,目的是为锚标记提供边框底部:

$(".breadcrumbs > li > a").click(function(){
     $(this).addClass('hoveractive');
});

在 Ios 上从未添加此类,因此未应用样式,其余代码如下:

.breadcrumbs > li > a.hoveractive {
    border-bottom : 1px solid #f05034;
}

HTML::-

<ul class="breadcrumbs">
     <li><a href="/en">Home</a></li>
     <li><a href="/en/about-desuninr">About Desunin<sup>®</sup> </a></li>
     <li>Interesting links</li>
 </ul>

基本上我只希望在页面刷新并转到下一个链接之前添加类几分之一秒,但这似乎没有发生。

如果我将代码更改为以下,

$(".breadcrumbs > li > a").click(function(){
     $(this).addClass('hoveractive');
     return false;
});

I.E.包括 return false 声明,然后在 ios 中添加类,但这当然不是我想要做的,所以总结一下我的问题,为什么我的 addClass 在 ios 中不起作用?

【问题讨论】:

  • 查看类似的帖子here
  • @jayly 太棒了...解决了这个问题,我仍然不明白why 点击不起作用但touchstart 起作用。
  • 这是另一个有用的post :)
  • @jayly 我相信这与事件委托有关 :) .. 在这种情况下,我认为 touchstart 和 click 之间的区别发挥了作用——stackoverflow.com/questions/9633297/…
  • 太棒了,很高兴你找到了你想要的答案:)

标签: javascript jquery ios css cross-browser


【解决方案1】:

尝试从文档中绑定点击事件,看看是否有帮助,

$(document).on('click', '.breadcrumbs > li > a', function(){
 $(this).addClass('hoveractive');
});

【讨论】:

    猜你喜欢
    • 2019-06-06
    • 1970-01-01
    • 2018-03-08
    • 1970-01-01
    • 2016-03-17
    • 2012-11-03
    • 1970-01-01
    • 2020-05-31
    • 1970-01-01
    相关资源
    最近更新 更多