Navigator.share()

Secure context: This feature is available only in secure contexts (en-US) (HTTPS), in some or all supporting browsers.

O método navigator.share() da API de compartilhamento da Web chama o mecanismo de compartilhamento nativo do dispositivo.

Sintaxe

var sharePromise = navigator.share(data);

Parâmetros

data

Um objeto que contém dados para compartilhar. Pelo menos um dos seguintes campos deve ser especificado. As opções disponíveis são:

Valor de retorno

Um Promise (en-US) que será cumprido assim que um usuário concluir uma ação de compartilhamento (geralmente o usuário escolheu um aplicativo para compartilhar). Ele rejeitará imediatamente se o parâmetro de dados não estiver especificado corretamente e também rejeitará se o usuário cancelar o compartilhamento.

Exemplos

Em nosso teste de compartilhamento na Web (consulte o código-fonte), há um botão que, quando clicado, invoca a API de compartilhamento na Web para compartilhar o URL da MDN. O JavaScript fica assim:

const shareData = {
  title: 'MDN',
  text: 'Aprenda desenvolvimento web no MDN!',
  url: 'https://developer.mozilla.org',
}

const btn = document.querySelector('button');
const resultPara = document.querySelector('.result');

// Deve ser acionado algum tipo de "ativação do usuário"
btn.addEventListener('click', async () => {
  try {
    await navigator.share(shareData)
  } catch(err) {
    resultPara.textContent = 'Error: ' + e
  }
  resultPara.textContent = 'MDN compartilhado com sucesso!'
});

Especificações

Especificação Status Comment
Web Share API
The definition of 'share()' in that specification.
Rascunho

Compatibilidade com navegadores

BCD tables only load in the browser

Veja também