2017-08-22 4 views
2

Je voudrais savoir s'il est possible d'activer un onglet de fenêtre ouvert quand je clique sur un lien d'une autre fenêtre.Activer un onglet de fenêtre ouverte quand on clique sur un lien d'une autre fenêtre

par exemple. Je clique sur un lien _blank du site Web A, qui ouvre une nouvelle fenêtre pour le site Web B. Maintenant, habituellement si je veux revenir au site Web A du site Web B, je dois fermer le site Web B ou chercher le site Web A manuellement.

Est-il possible de créer un lien sur le site web B qui activera le site web A déjà ouvert?

+0

Vous voulez dire que vous avez ouvert le site Web A dans un onglet et B dans un autre.Lorsque votre lien sur le site Web B est cliqué, le navigateur doit passer à l'onglet du site Web A –

+0

Si cela est ce que vous voulez, je crains que vous ne pouvez pas le faire.Réfiez-vous - https://stackoverflow.com/questions/15601190/is-it-possible-to-switch-browser-tab car il est activement bloqué dans la plupart des navigateurs –

+0

yup exactement que –

Répondre

0

Il est impossible, pour des raisons évidentes de sécurité: D

Si vous avez refered onglets que la fenêtre dans ce contexte, vous pouvez apparaître votre site Web comme une nouvelle orientation fenêtre et appeler() sur elle

yourPopupName.focus(); 

peut se concentrer sur la fenêtre surgie.

Référence: How to change browser focus from one tab to another

0

En théorie, il est impossible, mais peut-être cela pourrait fonctionner:

Basicly puisqu'il est le même site, vous pouvez stocker une variable quelque part comme dans le stockage local dans le Tabb comme ça quand jamais vous devez revenir à taba:

localStorage['update'] = true 

Puis TABA où vous avez ouvert le Tabb suivant votre exemple, vous pouvez faire un intervalle pour vérifier si elle a t o être mis à jour ou quoi que ce soit avec une fonction setInterval.

setInterval(function(){ 
    if (localStorage['update'] == true){ 
     localStorage['update'] = false; 
     $.get(location.href, function(){window.open(location.href)}, 'html'); 

     window.opener = window; 
     window.close(); 
    } 
}, 5000); 

Donc, ce sera basiquement vérifier tous les cinq secondes si elle doit être mise à jour, si oui il fixe la mise à jour de nouveau false ou il gardera rafraîchir la page, puis il ouvre une nouvelle et fermer lui-même qui forcera le navigateur pour se concentrer sur le nouvel onglet.

Ce n'est pas exactement ce que vous voulez réaliser, mais c'est aussi proche que vous pouvez l'obtenir avec js.

Si vous ne voulez pas rafraîchir au lieu de .get $ (... vous pouvez juste faire une alerte si le titre de l'onglet sera gras afin que l'utilisateur saura que quelque chose se passe là-bas.

Vous n'avez pas testé cela, mais vous avez eu l'idée