【问题标题】:disabling mobile long press on react-router Link tags在 react-router Link 标签上禁用移动长按
【发布时间】:2016-10-23 17:16:06
【问题描述】:

我正在开发一个渐进式网络应用程序,并希望用户将其添加到他们的主屏幕中,从而以独立模式启动应用程序(全屏,没有浏览器地址栏)。但是,由于我使用大量的 react-router Link 组件(我相信这只是一个锚标签),因此每当我长按包装在 Link 中的组件时菜单弹出选项,即复制链接地址...在 chrome 中打开等。有没有办法阻止这种情况发生,因为我不希望用户离开独立模式并在浏览器中打开链接。

【问题讨论】:

  • 您可能想尝试使用javascript or jquery 禁用该事件。我已经在 react-router 中尝试过,但你可以尝试它,因为它是一个网络应用程序。将-webkit-touch-callout 设置为none 将禁用来自链接等目标的标注,而-webkit-user-select 则使文本无法选择。希望这会有所帮助。
  • 我建议你不要。用户期望长按以特定的方式表现,如果弄乱了它会生气。他们已经决定将您的应用程序图标添加到他们的主屏幕,如果他们愿意,让他们在 Chrome 中打开链接。

标签: reactjs anchor react-router long-press progressive-web-apps


【解决方案1】:

不要使用,而是在自定义组件上使用 createBrowserHistory.push 函数。 由 实现,用户选择:'none' 将不适用于 。

【讨论】:

    【解决方案2】:
    -webkit-tap-highlight-color:  rgba(255, 255, 255, 0);
    

    这应该可行

    【讨论】:

      猜你喜欢
      • 2020-04-28
      • 2017-05-26
      • 2017-01-05
      • 2019-09-15
      • 2016-06-07
      • 2020-02-22
      • 1970-01-01
      • 2020-12-08
      • 2017-08-09
      相关资源
      最近更新 更多