网页版 Whatsapp 分享按钮

问题描述

我有这个脚本,但它只是移动版本的共享。

$(document).ready(function() {
    $(document).on("click",'.mc_whatsapp_btn',function() {
        if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) {
            var text = $(this).attr("data-text");
            var url = $(this).attr("data-link");
            var message = encodeURIComponent(text) + " - " + encodeURIComponent(url);
            var whatsapp_url = ".whatsapp://send?text=" + message;
            window.location.href =  whatsapp_url;
        } else {
            alert("Please use an Mobile Device to Share this Status");
        }
    });
});

有人可以修改吗?

解决方法

这一行

if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) {

检查移动设备,如果为真,则执行共享逻辑。在 else 分支(意味着它不是移动设备)中,您会收到一条错误消息。如果您希望在两个版本中都发生相同的情况,只需省略 if:

$(document).ready(function() {
    $(document).on("click",'.mc_whatsapp_btn',function() {
        //if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) {
            var text = $(this).attr("data-text");
            var url = $(this).attr("data-link");
            var message = encodeURIComponent(text) + " - " + encodeURIComponent(url);
            var whatsapp_url = ".whatsapp://send?text=" + message;
            window.location.href =  whatsapp_url;
        //} else {
            //alert("Please use an Mobile Device to Share this Status");
        }
    });
});
,

根据 WhatsApp 文档:https://faq.whatsapp.com/general/chats/how-to-use-click-to-chat/?lang=en

要创建仅包含预填充消息的链接,请使用 https://wa.me/?text=urlencodedtext

示例:https://wa.me/?text=I'm%20inquiring%20about%20the%20apartment%20listing`

结果应该是这样的:

$(document).ready(function() {
$(document).on("click",function() {
// this 3 rows will be used for both - desktop and mobile      
    var text = $(this).attr("data-text");
    var url = $(this).attr("data-link");
    var message = encodeURIComponent(text) + " - " + encodeURIComponent(url);
    if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) {
        var whatsapp_url = ".whatsapp://send?text=" + message;
    } else {
        var whatsapp_url = "https://wa.me/?text=" + message;
    }
    // again for both
    window.location.href =  whatsapp_url;
});

});