Je sais pas vous (enfin si j’ai quand même une vague idée) mais moi je suis fatigué de voir ce type de pages pulluler sur le réseau social des jeunes. Je veux bien sûr parler des fanpage dont il faut devenir membre pour voir le contenu. Souvent le contenu en question n’est pas des plus intéressant mais le titre est suffisamment aguicheur pour qu’un nombre colossal de pigeons se laissent avoir et oublient de quitter les groupes une fois le « précieux » contenu découvert. Ces listes de pigeons servent ensuite à envoyer de la pub soit via le mur soit directement par messages.
Je me suis un peu penché sur le problème et y ai trouvé une solution très simple et diablement efficace : une seule ligne de javascript (pondue par mes soins un jour de repos !) qui permet d’afficher le contenu caché sans avoir à rejoindre quoi que ce soit.
La ligne en question la voici :
javascript:spans=document.getElementById("tab_canvas").getElementsByTagName("span"); for(var sp in spans){spans[sp].style.visibility="visible"}
Pour que cela fonctionne il faut que vous soyez sur l’onglet de la page qui contient le contenu caché. Souvent il s’agit du premier onglet à être ouvert quand vous cliquez sur un lien. Ensuite vous avez deux solutions : la copier/coller dans la barre d’adresse à la place de l’url et valider avec la touche entrée comme si vous veniez d’entrer une réelle url. Ou, plus simple, ajouter un favoris dans votre navigateur dont l’adresse serait cette fameuse ligne. En plaçant le favoris dans la barre personnelle de Firefox par exemple vous n’aurez plus qu’à cliquer sur le bouton pour que le contenu de la page se mette à jour en direct.
Comment et pourquoi cela fonctionne
Le principe de ces pages est très simple : le créateur ajoute un onglet à sa page pour y faire figurer son contenu et décide de n’afficher le contenu qu’aux membres en le cachant aux autres dans un bête <span> caché par la propriété CSS visibility:hidden. Partant de là il suffit de parcourir tous les spans de la page affichée et de transformer la propriété visibility:hidden en visibility:visible.
Bien sûr cette méthode ne fonctionne que pour les balises <span> et uniquement si celles-ci ont été cachées en utilisant la propriété visibility. Mais jusqu’à présent je n’ai pas trouvé une seule page sur laquelle cela ne soit pas fait comme cela.
Petit conseil aux super développeurs qui ont pondu un concept du genre : utilisez des <div> ou d’autres balises et les propriétés display ou opacity pour continuer à ferrer du pigeon ! Et quand ça ne suffira plus il faudra songer à cacher le contenu côté serveur et à le faire apparaître en Ajax ^^