Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 02-01-2009 01:06:49

neojick
Membre
Date d'inscription: 13-04-2008
Messages: 223
Site web

Détecter si javascript activé

Bonjour, j'ai une question toute simple : existe t-il quelque chose permettant de savoir, au moment où l'ont est dans notre traitement ZF, si le navigateur qui a demandé la page a javascript d'activé ? Comme le noscript en html, mais à détecter avant l'affichage.

Merci


Chan IRC de ZF en français : zftalk-fr

Hors ligne

 

#2 02-01-2009 12:51:06

acharrex
Membre
Lieu: Suisse
Date d'inscription: 27-04-2008
Messages: 135

Re: Détecter si javascript activé

Peut-être une piste : http://php.developpez.com/faq/?page=js# … ctnoscript

Je ne pense pas que quelque chose du genre soit intégré dans ZF.

Hors ligne

 

#3 02-01-2009 13:00:51

neojick
Membre
Date d'inscription: 13-04-2008
Messages: 223
Site web

Re: Détecter si javascript activé

Après, reflexion, je me dis qu'il est peut-être possible de mettre quelque chose en session :
Premier passage du visiteur : par défaut, une variable du genre "haveJs" à false, et requête ajax pour le passer à true.

Donc si pas de JS, pas d'Ajax, pas de haveJs à true.

Inconvénient : si le visiteur désactive le JS en cours de navigation -> peu probable, et j'ai envie de dire : tant pis pour lui.

Le seul intérêt pour savoir ceci, est que je veux "ajaxiser" certains lien sur mon site. Si pas de js, le lien serait du type : href="/article/urldelarticle.html", si js activé, le lien serait plutôt : href="#/article/urldelarticle.html"

C'est du chipotage, mais l'avantage serait que si la personne fait un copier/coller du lien pour le coller dans un forum, en détectant que l'url est du type #quelquechose, et que l'entête prouve qu'on est pas en ajax, l'url sera modifiée pour tomber sur la véritable url de l'article en question.


Chan IRC de ZF en français : zftalk-fr

Hors ligne

 

#4 02-01-2009 16:05:57

nick
Membre
Date d'inscription: 31-05-2008
Messages: 84

Re: Détecter si javascript activé

neojick a écrit:

Après, reflexion, je me dis qu'il est peut-être possible de mettre quelque chose en session :
Premier passage du visiteur : par défaut, une variable du genre "haveJs" à false, et requête ajax pour le passer à true.

Donc si pas de JS, pas d'Ajax, pas de haveJs à true.

Inconvénient : si le visiteur désactive le JS en cours de navigation -> peu probable, et j'ai envie de dire : tant pis pour lui.

Le seul intérêt pour savoir ceci, est que je veux "ajaxiser" certains lien sur mon site. Si pas de js, le lien serait du type : href="/article/urldelarticle.html", si js activé, le lien serait plutôt : href="#/article/urldelarticle.html"

C'est du chipotage, mais l'avantage serait que si la personne fait un copier/coller du lien pour le coller dans un forum, en détectant que l'url est du type #quelquechose, et que l'entête prouve qu'on est pas en ajax, l'url sera modifiée pour tomber sur la véritable url de l'article en question.

Si c'est une histoire d'url, ce qui se fait couramment c'est de proposer  un lien "Lien vers cette page" (comme sur Gmaps par exemple) ou un texte dans un input à copier /coller ( sur flickr par exemple)

Hors ligne

 

#5 02-01-2009 17:31:50

neojick
Membre
Date d'inscription: 13-04-2008
Messages: 223
Site web

Re: Détecter si javascript activé

Oui oui, le "permalien" est prévu, mais comme la plupart des internautes ne jurent que par l'url du navigateur, j'aimerai bien jouer avec cette dernière.


Chan IRC de ZF en français : zftalk-fr

Hors ligne

 

#6 02-01-2009 20:01:55

neojick
Membre
Date d'inscription: 13-04-2008
Messages: 223
Site web

Re: Détecter si javascript activé

En fait y'a une solution plus simple :

j'utilise jQuery qui permet de naviguer avec les class en html. Du coup je peux modifier les liens à la vollée. Pas de js -> pas de modification de lien -> navigation normale.


Chan IRC de ZF en français : zftalk-fr

Hors ligne

 

#7 02-01-2009 20:35:57

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: Détecter si javascript activé

neojick a écrit:

Après, reflexion, je me dis qu'il est peut-être possible de mettre quelque chose en session :
Premier passage du visiteur : par défaut, une variable du genre "haveJs" à false, et requête ajax pour le passer à true.

Donc si pas de JS, pas d'Ajax, pas de haveJs à true.

Inconvénient : si le visiteur désactive le JS en cours de navigation -> peu probable, et j'ai envie de dire : tant pis pour lui.

Le seul intérêt pour savoir ceci, est que je veux "ajaxiser" certains lien sur mon site. Si pas de js, le lien serait du type : href="/article/urldelarticle.html", si js activé, le lien serait plutôt : href="#/article/urldelarticle.html"

C'est du chipotage, mais l'avantage serait que si la personne fait un copier/coller du lien pour le coller dans un forum, en détectant que l'url est du type #quelquechose, et que l'entête prouve qu'on est pas en ajax, l'url sera modifiée pour tomber sur la véritable url de l'article en question.

il y a beaucoup plus simple

Code:

< a href="/article/urldelarticle.html" onclick="ajaxOpen(#/article/urldelarticle.html); return false">

si j est actif alors le onclcik marche et sinon c'est le href
A+JYT

Hors ligne

 

#8 03-01-2009 01:51:52

neojick
Membre
Date d'inscription: 13-04-2008
Messages: 223
Site web

Re: Détecter si javascript activé

Ui c'est vrai, je l'ai modifié de cette façon qui est bcp bcp plus simple !


Chan IRC de ZF en français : zftalk-fr

Hors ligne

 

#9 03-01-2009 12:45:33

neojick
Membre
Date d'inscription: 13-04-2008
Messages: 223
Site web

Re: Détecter si javascript activé

Petite question qui n'a pas spécialement de rapport avec ZF, mais qui concerne le développement annoncé dans ce topic :

Pour rediriger http://www.monsite.fr/#/article/urldelarticle.html vers http://www.monsite.fr/article/urldelarticle.html, vous le feriez où : Apache ou PHP ?


Chan IRC de ZF en français : zftalk-fr

Hors ligne

 

#10 03-01-2009 13:40:25

acharrex
Membre
Lieu: Suisse
Date d'inscription: 27-04-2008
Messages: 135

Re: Détecter si javascript activé

Apache => URL Rewriting dans .htaccess

Hors ligne

 

#11 03-01-2009 14:26:26

neojick
Membre
Date d'inscription: 13-04-2008
Messages: 223
Site web

Re: Détecter si javascript activé

Mmmm, en même temps, il faut rediriger que si l'entête se présente comme étant pas envoyée en ajax, donc je ne peux logiquement que le faire en PHP.


Chan IRC de ZF en français : zftalk-fr

Hors ligne

 

#12 03-01-2009 14:29:10

neojick
Membre
Date d'inscription: 13-04-2008
Messages: 223
Site web

Re: Détecter si javascript activé

Et en PHP je ne peux logiquement pas récupérer ce qui est après le dièse non ?

(comment s'embourber ...)


Chan IRC de ZF en français : zftalk-fr

Hors ligne

 

#13 03-01-2009 14:54:00

Nikkau
Membre
Date d'inscription: 25-03-2008
Messages: 52

Re: Détecter si javascript activé

Pourquoi tu pourrais pas?

Si tu utilises parse_url ça sera le fragment, stou wink .

Hors ligne

 

#14 03-01-2009 15:34:30

neojick
Membre
Date d'inscription: 13-04-2008
Messages: 223
Site web

Re: Détecter si javascript activé

parse_url je suis d'accord, mais quand je souhaite récupérer l'url du navigateur, le "fragment" n'est pas récupéré.


Chan IRC de ZF en français : zftalk-fr

Hors ligne

 

#15 05-01-2009 09:38:15

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: Détecter si javascript activé

Normal, c'est une partie de l'url qui ne sert que pour le client à la base... Pour le situer dans la page... Ca n'est donc pas envoyé à Apache et encore moins à PHP.
Avec ce genre de technique , tu sera obligé de recharger le morceau de page que tu veux en js...

Hors ligne

 

#16 05-01-2009 10:31:02

neojick
Membre
Date d'inscription: 13-04-2008
Messages: 223
Site web

Re: Détecter si javascript activé

J'ai cru deviner que facebook avait une solution. Quand tu veux visualiser un profil depuis la page /home.php par exemple, tu te retrouve sur /home.php#profil.php?id=123456.
Et si tu tappe l'url dans le navigateur, tu es redirigé vers profil.php?id=123456. C'est assez rapide, je pensais à une détection via apache ou PHP, mais avec le JS désactivé, ça ne marche pas. Il y a donc un bout de code js exécuté rapidement qui détecte si une redirection est nécessaire. Ce qui est assez bluffant car logiquement, le js ne s'exécute pas aussi rapidement, du moins on voit souvent un début d'affichage html avec la redirection, mais là, c'est instantané.


Chan IRC de ZF en français : zftalk-fr

Hors ligne

 

#17 06-01-2009 09:40:19

Nikkau
Membre
Date d'inscription: 25-03-2008
Messages: 52

Re: Détecter si javascript activé

Ah oui, autant pour moi, j'avais oublié sur le moment que c'était pas transmis.

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages