javascript - 是否可以在智能手机上触发共享菜单(通过 HTML/JS)?

标签 javascript android html ios share

是否有可能通过 HTML 或 JavaScript 在智能手机的本地浏览器中触发共享功能?

当然,有很多服务都提供了分享按钮。但是当我例如想在 facebook 上分享网站,我需要在我目前使用的浏览器中登录 facebook。

几乎所有浏览器都内置了自己的共享功能,它会触发系统菜单来选择您要用于共享的应用程序:

System share menu in android os

这个问题是关于:如何触发这个菜单?

我知道可以在链接的 href 属性中使用指定前缀触发电话调用,例如 tel:callto:。也许这个共享菜单的快捷方式也存在?或者一些javascript代码?或者完全不同的方式怎么做?

提前致谢。

最佳答案

有可能有一个很大的收获。目前仅适用于 Android 版 Chrome、Samsung Internet 和 Safari(桌面版和移动版)。桌面版 Edge 和 Chrome 即将获得支持 http://caniuse.com/#feat=web-share

if (navigator.share) {
  navigator.share({
    title: document.title,
    text: "Hello World",
    url: window.location.href
  })
  .then(() => console.log('Successful share'))
  .catch(error => console.log('Error sharing:', error));
}

https://developers.google.com/web/updates/2016/10/navigator-share

关于javascript - 是否可以在智能手机上触发共享菜单(通过 HTML/JS)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15921262/

相关文章:

android - 错误代码:2 Unexpected Top-level Exception

java - 重构名称后出现 NoClassDefFoundError

php - 内联 css 背景图像中的 echo php 删除 url 中的 '/'

php - 使用php将嵌入js加载到页面中以将其隐藏在源代码中?

Javascript/jQuery 获取我正在输入的文本区域的 id

Android - sendOrderedBroadcast 帮助

javascript - "text-decoration: blink"& 浏览器

javascript - 如何解决 Firefox 中的跨域请求被阻止错误

javascript - 为什么我的 jsfiddle Javascript 类没有定义?

javascript - 格式化表单输入字段会解除我的 ng-model 的绑定(bind)