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 :

userscript non reconnu


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    148
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 148
    Par défaut userscript non reconnu
    Bonjour,

    J'ai finalement réussi ce que je voulais ! Il marche très bien dans mon firebug ... Sauf que le script ne marche pas avec userscript ... ou est l'erreur ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    // ==UserScript==
    // @name          Grepolis Halloween 2011
    // @author        JBGO
    // @licence       Copyright JBGO, Tous droits réserves 2011+
    // @version       1
    // @include       http://fr1.grepolis.*/game*
    // @include       http://fr2.grepolis.*/game/*
    // @include       http://fr3.grepolis.*/game/*
    // @include       http://fr4.grepolis.*/game/*
    // @include       http://fr5.grepolis.*/game/*
    // @include       http://fr6.grepolis.*/game/*
    // @include       http://fr7.grepolis.*/game/*
    // @include       http://fr8.grepolis.*/game/*
    // @include       http://fr9.grepolis.*/game/*
    // @include       http://fr10.grepolis.*/game/*
    // @include       http://fr11.grepolis.*/game/*
    // @include       http://fr12.grepolis.*/game/*
    // @include       http://fr13.grepolis.*/game/*
    // @include       http://fr14.grepolis.*/game/*
    // @include       http://fr15.grepolis.*/game/*
    // @include       http://fr16.grepolis.*/game/*
    // @include       http://fr17.grepolis.*/game/*
    // @licence     2011+
    // ==/UserScript==
     
    function init () {
    $('<div id="present_pumpkin_110_495" class="tile" style="position: absolute; left: 14200px; top: 63616px;"></div>').appendTo('#map_towns');$("#present_pumpkin_110_495").css("background-image","url(http://cdn.grepolis.com/images/game/map/presents/pumpkin1.gif)");
    $('<div id="present_pumpkin_94_487" class="tile" style="position: absolute; left: 12160px; top: 62400px;"></div>').appendTo('#map_towns');$("#present_pumpkin_94_487").css("background-image","url(http://cdn.grepolis.com/images/game/map/presents/pumpkin2.gif)");
    $('<area id="clic_present_pumpkin_94_487" shape="circle" coords=200,220,32"></ >').appendTo('#map_marker');
    $('<div id="pumpkin_farm" style="z-index:2;position:absolute;width:81px;height:41px;top:0px;right:208px;"></div>').appendTo('#town_background');
    $("#pumpkin_farm").css("background-image","url(http://cdn.grepolis.com/images/game/visual2/crop_circle_pumpkin.png)");
     
    };
     
    setTimeout( init, 250 );
    Merci !!

  2. #2
    Membre Expert Avatar de Willpower
    Homme Profil pro
    sans emploi
    Inscrit en
    Décembre 2010
    Messages
    1 009
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : sans emploi

    Informations forums :
    Inscription : Décembre 2010
    Messages : 1 009
    Par défaut
    ça marche dans firebug mais pas dans userscript .... tu veux parler de greasemonkey ?

    le code semble correct ! après il faut voir si les éléments auxquels tu fais références existent bel et bien. tu mets un timer de 0.25 seconde ... à quoi sert-il ? certains éléments de la page n'existent pas encore quand ton script est lancé ? et tu espères qu'après ces 0.25sec ils existeront ?

    enfin tu sembles utiliser des méthodes de jQuery sans charger jQuery.


    si la page originale possède jquery, alors tu peux tenter de le récupérer comme suit :

    var $ = unsafeWindow.jQuery;

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    148
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 148
    Par défaut
    C'était pour sa ... mais visiblement, sa ne change rien !

    Oui, je parle de greasemonkey ! Et les éléments existent bien ! Il marche très bien dans firebug avec sa :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $('<div id="present_pumpkin_110_495" class="tile" style="position: absolute; left: 14200px; top: 63616px;"></div>').appendTo('#map_towns');$("#present_pumpkin_110_495").css("background-image","url(http://cdn.grepolis.com/images/game/map/presents/pumpkin1.gif)");
    $('<div id="present_pumpkin_94_487" class="tile" style="position: absolute; left: 12160px; top: 62400px;"></div>').appendTo('#map_towns');$("#present_pumpkin_94_487").css("background-image","url(http://cdn.grepolis.com/images/game/map/presents/pumpkin2.gif)");
    $('<area id="clic_present_pumpkin_94_487" shape="circle" coords=200,220,32"></ >').appendTo('#map_marker');
    $('<div id="pumpkin_farm" style="z-index:2;position:absolute;width:81px;height:41px;top:0px;right:208px;"></div>').appendTo('#town_background');
    $("#pumpkin_farm").css("background-image","url(http://cdn.grepolis.com/images/game/visual2/crop_circle_pumpkin.png)");

    Mais rien avec faire avec GM ... j'ai testé le qyery, rien

  4. #4
    Membre Expert Avatar de Willpower
    Homme Profil pro
    sans emploi
    Inscrit en
    Décembre 2010
    Messages
    1 009
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : sans emploi

    Informations forums :
    Inscription : Décembre 2010
    Messages : 1 009
    Par défaut
    quoi qu'il en soit tu utilises visiblement une librairie que tu ne déclares null part, je me demande comment tu espères que ça puisse marcher.


    tu devrais aussi certainement avoir un message d'erreur dans ta console, s'il ne t'aide pas à résoudre ton problème, tu pourrais le mettre ici pour que nous te l'interprétions et t'aidions à corriger ton erreur.


    à quoi sert ton timeout ? as-tu essayé d'en mettre un plus long ? de plusieurs secondes.. ça ne fonctionne pas non plus ?


    edit: parfois tu utilises $(" ... ") et parfois $(' ... ') essayes de te mettre une règle pour l'usage des apostrophes/guillemets sinon tu ne vas pas t'en sortir.

  5. #5
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Pour des raisons de sécurité, les userscripts ne sont pas liés aux scripts des pages auxquelles ils s'appliquent.
    Si tu veux utiliser jQuery, il faut le préciser dans les meta tags.
    Third-Party Libraries
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  6. #6
    Membre Expert Avatar de Willpower
    Homme Profil pro
    sans emploi
    Inscrit en
    Décembre 2010
    Messages
    1 009
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : sans emploi

    Informations forums :
    Inscription : Décembre 2010
    Messages : 1 009
    Par défaut
    Citation Envoyé par Bovino Voir le message
    Pour des raisons de sécurité, les userscripts ne sont pas liés aux scripts des pages auxquelles ils s'appliquent.
    Si tu veux utiliser jQuery, il faut le préciser dans les meta tags.
    Third-Party Libraries
    oui, il existe des tas de façon de lier jQuery à un user-script.

    - la tienne, la plus évidente mais parfois si la page le possède déjà, on peut vouloir utiliser celui-là pour éviter de le charger 2 fois.

    - récupérer celui de la page comme je l'ai montré en utilisant unsafeWindow

    - une version locale en copiant collant la source de jquery dans le userscript ... l'userscript étant installé une fois pour toutes, ça ne fait aucun appel externe pour le charger.

    - le charger à l'ancienne avec un head.appendChild(script.src = "jquery") (enfin on se comprend) et lancer le reste du script sur le onload.

    dans les 2 derniers cas, bien vérifier d'appeler la méthode noConflicts si la page contient dejà des version de jquery ou autres librairies utilisant le "$".

  7. #7
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    en utilisant unsafeWindow
    L'utilisation de unsafewindow est plus que déconseillée ! C'est une énorme faille de qui permet d'étendre à un script des droits qu'ils ne devrait pas avoir !
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  8. #8
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    148
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 148
    Par défaut
    Merci pour vos réponses !!

    J'ai rajouté :

    et sa marche sur Mozilla !

    Par contre, je voudrais qu'il soit compatible aussi sous chrome via TamperMonkey ... mais là, sa ne marche pas

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Lomboz] [JBoss] JBoss 3.2.6 non reconnu par Lomboz ?
    Par romain3395 dans le forum Eclipse Java
    Réponses: 4
    Dernier message: 17/12/2004, 16h35
  2. Commandes non reconnues.
    Par Manu' dans le forum Administration système
    Réponses: 3
    Dernier message: 07/10/2004, 17h09
  3. [EJB] [JSP] Méthode EJB non reconnue dans jsp
    Par stago dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 06/07/2004, 09h52
  4. Creation de table, caractère non reconnu
    Par Missvan dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 17/02/2004, 13h28
  5. xslt_create() non reconnu
    Par BRAUKRIS dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 11/12/2003, 14h43

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