Carregamento de quadro do OSX Safari interrompido

Eu tenho um site HTML básico (com algum javascript) usando uma simples marca âncora para baixar um arquivo como este:

<a href="../resources/mexml/MexmlSamples-1.0.zip">Mexml Samples 1.0</a>

Para rastrear o número de downloads, tenho umonclick manipulador que passa um evento para o Google Analytics da seguinte forma:

$('#mybutton').click(function(e){ga('send','event','Download','MexmlSample','MexmlSample-1.0');});

Isso funciona como esperado ao baixar o arquivo usando o Chrome no OS X e o IE no Windows 7. O arquivo é baixado e vejo o evento na minha conta do GA.

Quando eu testo no Safari 8 no Yosemite, o arquivofaz download, mas o GA raramente vê o evento. E é claro que eu tenho o temidoFailed to load resource: Frame load interrupted no console de erros do Safari.

Suponho que, às vezes, recebo o evento do GA por causa de uma condição de corrida entre quando o Safari interrompe a ação e quando o código do GA é acionado.

Então, algo pode ser feito para corrigir isso no Safari para que eu sempre receba os eventos do GA?

Observe que minha pergunta provavelmente tem a mesma causa raiz que estasem resposta Pergunta, questão:Carregamento de quadro interrompido ao baixar arquivos do excel

Atualização 6 de junho

Agora estou completamente confuso. Acabei de notar que, se eu abrir uma nova página do navegador no meu site (no Safari) e clicar no download, ela será registrada pelo GA. No entanto, os cliques subsequentes baixam ainda o arquivo, mas não são registrados pelo GA.

Se eu fechar essa janela e abrir uma nova, novamente o primeiro download será registrado pelo GA.

Por outro lado, ao usar o Chrome, todos os downloads são registrados pelo GA.

Agora estou pensando que posso estar olhando para o problema errado. O comportamento que estou vendo está me dizendo que o Safari está mantendo um estado em JavaScript que permite a passagem da primeira chamada do GA, mas bloqueia todas as chamadas subseqüentes.

Mas esse é o mesmo código que está sendo executado pelo Chrome, então não sei por onde começar a depurar o problema.

questionAnswers(2)

yourAnswerToTheQuestion