html - iOS tel:和mailto:链接仅适用于target =“_ blank”

标签 html ios iphone anchor

我知道这个问题已经发布了很多,但是我找不到适合我的全球解决方案。

我有以下HTML:

<div class="contact-details__content-container">
  <h4 class="contact-details__title">Press Enquiries</h4>

  <ul class="list-unstyled contact-details__list">
    <li class="contact-details__list-item">
      <span class="contact-details__name">Name Name</span>
      Job Title
    </li>
    <li class="contact-details__list-item">
      <span class="contact-details__name">Name Name</span>
      Job Title
    </li>
    <li class="contact-details__list-item">
      <a href="mailto:email@email.com" title="email@email.com" class="contact-details__email">email@email.com</a>
      <a href="tel:+442033333333" title="+44 (0)20 3333 3333" class="contact-details__telephone visible-xxs visible-xs">+44 (0)20 3333 3333</a>
    </li>
  </ul>

</div>

https://jsfiddle.net/4hyvdheu/2/

此处的mailtotel链接可在android和台式机上完美运行,但不适用于iOS。

我在Stack Overflow和其他网站上浏览了很多帖子,而我在iOS上唯一能找到的解决方案是添加target="_blank"

尽管对于某些人来说这可能是一个解决方案,但这对我来说还不够好。在链接中添加target="_blank"会导致空白页面在台式机和Android上均打开,从而给用户带来糟糕的体验。

有没有人能够找到可以解决所有情况的解决方案。

对于一些额外的信息,我正在使用最新的Bootstrap框架。

希望有人能帮忙。

最佳答案

如果您根本可以将其视为一个答案,这是一个较晚的答案,但是我最近遇到了一个变体,并取得了一些进展。

基本上,看来target="_blank"链接确实需要mailto,它们才能在iOS / Safari(在最新版本中)一致地工作。

那么Android呢?经过一些测试-只要您旁边没有target="_blank",您也可以为Android / Chrome设置rel="noopener"。为什么?!谁知道?没人愿意记录下来,或者我的谷歌搜索功能使我失败了。

测试您自己的理智:
https://jsfiddle.net/f31psnhx/2/

关于html - iOS tel:和mailto:链接仅适用于target =“_ blank”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42839716/

相关文章:

ios - 是否有可能使 xcode 编译不停?

javascript - 追加后初始化jquery

ios - 关闭人脸识别 iOS 7 UIImagePicker

iphone - swift swreveal - 显示使用按钮或点击手势切换到侧边菜单

c++ - Direct2D 等效于 IOS OSX 开发

ios - objc 与协议(protocol)继承不兼容的指针类型

iPhone SDK : UISearchBar: searchBarTextDidEndEditing not firing

html - 在 td 内将图像大小调整为 100%

css - 如何让 float 的 div 对齐到顶部?

javascript - 单击带有 CSS 的 + 图标后自动折叠 Accordion 样式选项卡