【问题标题】:Share via WhatsApp only if it is installed仅在已安装的情况下通过 WhatsApp 共享
【发布时间】:2015-02-03 22:51:55
【问题描述】:

我正在尝试为安装了该应用的访问者提供 WhatsApp 共享选项(用于移动网站)。

验证访问者是否能够使用此功能以便我可以相应地启用/禁用它的最佳方法是什么?

该功能只是使用自定义 URL 方案的链接:

<a href="whatsapp://send?text=Hello%20World!">Hello, world!</a>

【问题讨论】:

  • 你能解决这个问题吗?

标签: javascript whatsapp


【解决方案1】:

您可以通过检查链接是否打开来解决此问题。

这是我的代码

function open_whatsapp(){
    $.ajax({
      type: 'HEAD',
      url: 'whatsapp://send?text=Hello%20World!',
      success: function() {
        window.location='whatsapp://send?text=Hello%20World!';   
      },
      error: function() {
        alert("Whatsapp not installed");
      }
    });
  }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button id="share_whatsapp" onclick="open_whatsapp()">Share with Whatsapp</button>

【讨论】:

  • 每次执行 open_whatsapp() 时都会出现以下错误:“无法加载 whatsapp://send?phone=+XXX:跨源请求仅支持协议方案:http、data、铬,铬扩展,https。”
【解决方案2】:

这不是很好的解决方案,因为它取决于操作系统。

if(isMobile()){
   function onWhatsAppClick(e){
       e.preventDefault();
       window.location='whatsapp://send?text=text=Hello%20World!';
   }
}

解释:

  1. 您应该只在移动设备上查看并显示 WhatsApp
  2. 防止默认,用window.location打开链接

Plunker:https://plnkr.co/edit/U4CtbxeA81d25lc7dlGe?p=preview

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-10
    • 2013-12-13
    • 2015-05-07
    • 2021-10-28
    相关资源
    最近更新 更多