2017-10-02 6 views
0

J'ai besoin d'avoir un lien pour ouvrir une certaine page et activer/désactiver une fenêtre cachée juste après. Le popup apparaît normalement en cliquant sur un bouton spécifié sur cette page. Est-ce seulement possible? Je en ai besoin pour un modèle de courrier électronique HTML, donc pas sûr si javascript fonctionneraComment puis-je faire aller un lien à une page et basculer en popup dedans?

+0

développement Email est pas le développement frontal. JavaScript ne fonctionnera pas dans la plupart des clients de messagerie. Si vous pouvez le faire en CSS, c'est possible. Juste parce que je ne peux pas penser à un moyen de faire ce travail n'est pas important. Si vous pouvez penser à un moyen, faites-le. – gwally

+0

Martin, la réponse donnée ci-dessous ne fonctionnera que lorsque l'email est vu en ligne. Comme @gwally dit ne fonctionnera pas dans la plupart des clients de messagerie ne supporte pas JavaScript dans les emails. La réponse que vous avez choisie ne fonctionnera pas. – Syfer

+0

Cela fonctionne sur mobile, mais seulement si l'utilisateur ouvre le lien dans le navigateur mobile et non via l'application client de messagerie. – Martin

Répondre

0

j'ajouter un paramètre d'URL du lien dans l'e-mail ... Quelque chose comme ?popup=true

Ensuite, sur la page que vous 'ai lié à JavaScript, vous pouvez vérifier pour ce paramètre d'URL puis afficher le popup.

var urlParams = new URLSearchParams(window.location.search); 
if (urlParams.get('popup') === 'true') { 
    // show popup code here... $('.popup').show() if using jQuery... 
} 

URLSearchParams ne ne fonctionne pas dans IE si https://caniuse.com/#feat=urlsearchparams

Donc, si vous avez besoin pour soutenir Internet Explorer, vous pouvez utiliser cette fonction au lieu

function getUrlParameter(name) { 
    name = name.replace(/[\[]/, '\\[').replace(/[\]]/, '\\]'); 
    var regex = new RegExp('[\\?&]' + name + '=([^&#]*)'); 
    var results = regex.exec(location.search); 
    return results === null ? '' : decodeURIComponent(results[1].replace(/\+/g, ' ')); 
}; 
+0

JavaScript ne fonctionne pas dans les e-mails. – gwally

+0

C'est vrai, mais il veut ajouter le JS à la page, pas dans le courriel. Vous venez d'ajouter un paramètre à l'URL qui est possible dans le code HTML. Cela fonctionne réellement. – Martin

+0

La seule fois où le JS fonctionnera, c'est quand l'email est vu en ligne. Aussi la page est l'email? – Syfer