2011-08-28 2 views
1

Je viens juste de commencer à utiliser Greasemonkey et essaie de faire un userscript qui racler une page -UserScript simple Greasemonkey ne fonctionne plus après les fonctions ajoutées

Avant que je suis entré dans ce que j'ai essayé de courir quelques tests à augmenter ma familiarité avec Greasemonkey (par exemple j'ai essayé un usercript qui avait juste une alerte, qui a fonctionné). Cependant, après avoir ajouté des fonctions, l'alerte (appelée en haut) n'a pas fonctionné. Pourquoi cela se produit-il?

//==UserScript== 
'//@name stanfordWhoScraper 
//@require http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js 
//==/UserScript== 
alert("TEST"); 
/*Functions*/ 
function jquerify(jquerified){ 
if(!(window.jQuery && window.jQuery.fn.jquery == '1.6.2')) { 
var s = document.createElement('script'); 
s.setAttribute('src', 'http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js'); 
s.setAttribute('type', 'text/javascript'); 
document.getElementsByTagName('head')[0].appendChild(s); 
jquerified = true; 
return jquerified; 
} 
} 
function findName(url){ 
    if (!typeof url) return "Enter string url" 
    var name = $("#PublicProfile h2").load(url); 
    if (name == "") return "No name found"; 
    return name; 
}' 

Merci!

Répondre

1

Il existe plusieurs problèmes avec ce script. Les 2 qui l'empêchent de fonctionner sont:

  1. Apostrophes parasites selon Artyom.
    Modification: '//@name stanfordWhoScraper à // @name stanfordWhoScraper et modifiez: }' à }.

  2. malformée metadata block:
    est nécessaire Whitespace après les barres obliques de premier plan. Ceci est faux et échoue:

    //==UserScript== 
    //@name stanfordWhoScraper 
    //@require http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js 
    //==/UserScript== 
    


    Ce est correct:

    // ==UserScript== 
    // @name stanfordWhoScraper 
    // @require http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js 
    // ==/UserScript== 
    
0

Supprime la citation unique sur la ligne 2. Elle commence une chaîne qui se termine lorsqu'une autre citation unique est rencontrée (à l'intérieur de votre fonction), et par conséquent aucune analyse n'est effectuée.

+0

Je n'ai pas fait que dans le code- qui est du code entrer de débordement de pile ici chose – praks5432

+0

Y a-t-il des erreurs dans la console Javascript? – Artyom

+0

non, il n'y en a pas, j'ai même enlevé toutes les fonctions et juste eu une alerte affichant le nom, où le nom est var name = $ ("# PublicProfile h2"). Load (url); et url est spécifié par moi-il ne fonctionne toujours pas – praks5432

Questions connexes