2010-12-19 3 views
0

J'ai un lien sur ma page qui ajoute la page aux favoris/signets de l'utilisateur. Le problème est que cela ne fonctionne que sur Explorer ou Firefox donc je veux ajouter une condition pour qu'elle n'apparaisse pas si l'utilisateur utilise Chrome. Comment fait-on ça?Comment afficher quelque chose uniquement sur Firefox et Explorer?

Voici le code:

<a href="#" rel="sidebar" onclick="if(document.all && !window.opera){ window.external.AddFavorite(location.href, document.title); 
return false; }else{ this.title = document.title; }" title="bookmark this page">Agregá esta página a favoritos</a> 

Merci

+2

Je crois que cela devrait être fait dans le navigateur plutôt que le serveur, c'est-à-dire, javascript pas PHP –

+0

Inversement, peut-être quelqu'un peut vous suggérer un plus cr Outer-navigateur moyen de signet? On dirait une meilleure solution au problème. – David

+0

Cet article peut aider http://www.w3schools.com/js/js_browser.asp – ptpaterson

Répondre

1

Vous utilisez déjà la détection d'objets JavaScript pour déterminer le navigateur. Vous pouvez continuer à utiliser ceci pour ajouter dynamiquement le lien au chargement de la page ou pour le définir style à affichage aucun/vrai. Je recommanderais cette approche car elle maintient tout cohérent (côté client).

Cependant, si vous voulez faire avec PHP, puis vérifier $_SERVER['HTTP_USER_AGENT']

+0

Je seconde l'approche dynamique de la vérification des capacités du navigateur. Faire des vérifications explicites pour des chaînes comme "Firefox" échouera sur des dérivées, comme IceWeasel, Fennec, SeaMonkey, Thunderbird, etc. et cela deviendra rapidement un cauchemar de maintenance. –

0

il y a une pléthore de façons de le faire via css mais est le plus facile

tour de webkit /** saf3 +, chrome1 + **/ Écran @media et (-webkit-min-périphérique-pixel-ratio: 0) {a [rel = "sidebar"] {display: none}}

Questions connexes