2017-04-24 5 views
2

Es gibt eine Website mit einem Textarea und der Textarea hat eine Klasse von foo und ich versuche eine Chrome-Erweiterung zu erstellen, um diese Textarea zu füllen, wenn ich die Website öffne, aber aus irgendeinem Grund funktioniert mein Code nicht .chrome extension eine textarea aktualisieren

JavaScript:

window.onload = function(e) { 
    if(window.location.hostname == 'www.foobar.com'){ 
     document.querySelector('.C_INPUT').value = "example text"; 
    } 
} 

Dieser Code funktioniert nicht. Wenn ich ein anderes div schnappe und nur die Größe der Schriftart ändere, funktioniert es, aber nicht für diesen Code.

Ich bekomme in der Konsole den folgenden Fehler.

at Uncaught TypeError: Cannot set property 'value' of null 
at content.js:5 

Ja, das Textfeld leer, aber ich versuche, es zu füllen, sur so nicht, warum dieser Fehler

Antwort

2

Versuchen Sie, wie als poping hält -

window.onload = function(e) { 
    if(window.location.hostname == 'www.foobar.com'){ 
     var C_INPUT = document.querySelector('.C_INPUT'); 
     console.log(C_INPUT); /*Debug here, You are getting null Object Here*/ 
    } 
} 

Hinweis: Debuggen Sie Ihre Auswahl, es wird null (Nein Element ausgewählt)

0

Es scheint, die Wähler falsch ist, Sie erwähnten Textfeld eine Klasse hat foo aber in Code, den Sie verwenden C_INPUT

Edit:

window.onload = function(e) { 
     if(window.location.hostname == 'www.foobar.com'){ 
      document.querySelector('.foo').value = "example text"; 
     } 
}