IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Interagir avec une page html


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Pgs
    Pgs est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    482
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 482
    Par défaut Interagir avec une page html
    Bonjour,

    Je souhaite interagir avec deux objets d'une page html :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <button class="control control-next" type="button" data-action="nextSong" title="Suivant" data-reactid=".3.3.1.0.4.0"></button>

    pour déclencher le passage à la chanson suivante.

    Puis

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <div class="player-track" data-action="seek" data-reactid=".3.3.0.1">
        <h2 class="player-track-title heading-2" data-reactid=".3.3.0.1.0">
            <span class="player-track-link" data-action="link" data-href="/album/74479" data-reactid=".3.3.0.1.0.0">Eye of the Tiger</span>
        </h2>
        <h3 class="player-track-artist heading-2-sub ellipsis" data-reactid=".3.3.0.1.1">
            <span data-reactid=".3.3.0.1.1.0">par</span>
            <span data-reactid=".3.3.0.1.1.1">&nbsp;</span>
            <span data-reactid=".3.3.0.1.1.2:0:0"></span>
            <span class="player-track-link" data-action="link" data-href="/artist/39" data-reactid=".3.3.0.1.1.2:0:$artist_39">Survivor</span>
         </h3>
    </div>

    pour récupérer le titre et l'auteur de la chanson.

    Je programme en C++/wxWidgets mais j'ai besoin de comprendre quelles instructions javascript envoyer à la page. Page exemple, le bouton "Suivant" n'a pas d'ID. Comment le lancer via une commande extérieure ?

    Merci.

    Philippe

  2. #2
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Par défaut
    Il n'y a pas que les ID pour identifier un élément, on peut venir le sélectionner en JavaScript par bien d'autres moyens (nom de tag, class, attributs et valeurs d'attributs...)

    Dans le cas présent il y a déjà un JS qui écoute un évènement sur ce bouton data-action="nextSong". Il faudrait regarder le code du JS existant et voir si on ne peut pas appeler directement la fonction appelée à la suite de cet événement.

  3. #3
    Pgs
    Pgs est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    482
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 482
    Par défaut
    Merci Sylvain,
    Je n'arrive pas à trouver la fonction. La page est http://www.deezer.com/.
    En affichant le code source, je n'y vois même pas le champ "nextSong".
    Peut-être est-il ajouté de façon dynamique.

    Philippe

  4. #4
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Par défaut
    Tu veux injecter du JS sur un site qui ne t'appartient pas ? Le seul moyen de faire ça, c'est une extension au navigateur et ton code ne fonctionnera plus du jour au lendemain dès que Deezer voudra mettre à jour son site.

  5. #5
    Pgs
    Pgs est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    482
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 482
    Par défaut
    Voici mon objectif :

    * en travaillant, il m'arrive d'écouter des playlists (par exemple sous deezer),
    * lorsque la chanson ne me plait pas, je suis obligé de cliquer sur l'icône du navigateur dans la barre d'outil windows, de sélectionner le bon onglet (si besoin), de cliquer sur suivant, puis de revenir à mon application initiale,
    * lorsque la playlist diffuse une super chanson que je ne connais pas, je fais la même manip pour aller copier le titre.

    Je voudrais pouvoir plus directement faire ces deux séries d'opérations :
    * lancer "directement" la fonction "suivant",
    * copier "directement" la balise contenant le titre.

    Rien de plus ambitieux...

  6. #6
    Pgs
    Pgs est déconnecté
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    482
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 482
    Par défaut
    Bonjour,

    Pour faire suite à mon précédent mail :
    a) Je n'ai toujours pas trouvé la fonction à appeler. Je tente donc d'autres solutions.
    b) J'arrive à déclencher le clic sur un bouton par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('submit').click();
    c) Je n'arrive pas à déclencher le clic sur la balise <a> contenue dans un div. Cette balise a une seule propriété définie : href
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <div id="div_1"><a href="..."</a><div>
    La commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    document.getElementById('div_1').click();
    n'a pas d'effet.

    Merci pour toute aide

Discussions similaires

  1. Interagir avec une page web
    Par ToTo13 dans le forum Développement Web en Java
    Réponses: 0
    Dernier message: 20/01/2015, 08h40
  2. [Débutant] Application Vb interagit avec une page HTML Comment Faire ?
    Par x2FuUk dans le forum VB.NET
    Réponses: 5
    Dernier message: 02/09/2014, 21h57
  3. VB6: Récupération des meta d'une page HTML avec HTMLDocument
    Par Matounet dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 22/09/2011, 07h55
  4. Dessiner avec une page html ?
    Par bob633 dans le forum Langage
    Réponses: 2
    Dernier message: 22/04/2010, 11h27
  5. Réponses: 7
    Dernier message: 14/09/2005, 10h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo