[Facebook] Voir le contenu d’une fanpage sans avoir à devenir fan

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 ^^

9 réflexions sur « [Facebook] Voir le contenu d’une fanpage sans avoir à devenir fan »

  1. Ping : www.fuzz.fr

  2. Jarod

    Il n’y a pas moyen de le faire pour toutes les balises sans distinction ? Ce serait plus universel, non ?

    En tout cas, ça reste une méthode simple et puissance, merci beaucoup 😉

  3. Paul Auteur de l’article

    L’idéal serait de pouvoir utiliser du jQuery : $(« #tab_canvas *:hidden »).css(« visibility », « visible »);

    Mais Facebook n’utilise pas (plus ?) jQuery donc non ce n’est pas possible à moins de parcourir le DOM par noeux et ça prendrai un temps et des ressources folles pour pas grand chose de plus.

    A l’heure actuelle je n’ai pas encore rencontré une fanpage qui utilise autre chose que des avec la propriété visibility hidden…

  4. Vragh

    Bravo, et merci, si tout le monde savait ça, ça éviterait de voir tous ses « amis » rejoindre des fan pages au noms de plus en plus débiles

  5. elo

    Pour Paul : tu à l’air de mettre jquery sur un pied d’estale alors que le JS de base est d’une part compréhensible par tous dev JS mais aussi plus rapide, plus propre et SURTOUT standard. Autant l’utiliser !

    Voici ton code :
    var obj=document.getElementById(‘tab_canvas’).getElementsByTagName(‘*’);
    for (var i=0; i<obj.length; i++)
    {
    if (obj[i].style.visibility=='hidden') obj[i].style.visibility='visible';
    }

    Simple, non ? Et tu comprendras ce code dans 5 ans !

Les commentaires sont fermés.