• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

marquee befehl soll automatisch alle 1-2 minuten komplett neu geladen werden

RXBeat

Mitglied
Ich hab einen <marquee> also Scrollbalken. Die Daten werden von einer Google Sheet gezogen. Sobald man die Google Sheet aber umschreibt, ist ja logisch das die marquee nicht einfach automatisch neu lädt. Wie könnte ich es hinbekommen das nur <marquee id="test123"></marquee> sich alle 1-2 oder 5 Minuten wie auch immer, sich neu lädt?
Nicht die ganze Seite soll neu laden!!! Nur dieser Html Befehl :)
 
Werbung:
Je nachdem wie das alles aufgebaut ist , erstellst du das <marquee mit ein javascript und damit kannst du ein setInterval setzen .
Das wäre jetzt meine Idee.
Man könnte das aber besser sagen wenn man genau weiß wie dein Code ist , weil ich das mit Googel so noch nicht gemacht habe
 
So würde das aussehen, wie gesagt daten zieht der von google sheets, funktioniert bei mir auch, hier würde das nicht gehen. Müsste nur wissen wie <marquee> alle 2-3 minuten aktualisiert werden kann.
Gibt es keinen einfachen befehl der <marquee> einfach mal reloadet? :)


<marquee id="test123"></marquee>

<script>
// The code in this function runs when the page is loaded.
$(function() {
google.script.run.withSuccessHandler(showMenu1)
.getMenuListFromSheet1();
});

function showMenu1(menuItems) {
var list = $('#test123');
list.find('option').remove(); // remove existing contents

for (var i = 0; i < menuItems.length; i++) {
list.append('<option>' + menuItems + '</option>');
}
}
</script>
 
Werbung:
marquee ist eigentlich veraltet und nimmt man sowieso nicht mehr.
Aber trotzdem kenne ich da jetzt kein Befehl der das neu laden tut.

Da du ja die Daten bei Googel ändern willst , mußt du auch das Script neu laden , bzw die Daten neu holen von Google mit Ajax oder co.

Hast d das schon online ?
Dann kann man mal das genau sehen .
Ich würde jetzt einfach ein Teil von dein Script in einer Function packen und das nach 3 Minuten reloaden.

Aber vieleicht geht es auch besser , zb man fragt bei Googel mit Ajax nach , ob da neue Daten sind und wenn ja werden die Daten geholt.

Ich kenne google sheet nicht , deswegen werde ich nachher mal kucken ob das so gehen tut wie ich das denke
 
Thx für Antwort, also Ajax hab ich versucht raus zu halten. Ich versuche alles mir html und javascript zu lösen.
Ich dachte eher an marquee in div, dem eine Id zuteilen und dann mit Javascript diese ID einfach alle 5 Minuten resetten oder refreshen. Wenn ich mach HTML Part refreshen suche finde ich auch viele javascripte.. bin aber zu schlecht in Java um die umzuschreiben. Nach Zeit X ändert sich plötzlich der Text etc. Aber will einfach nur das es reloadet wird :)
Wie gesagt, falls ihr Ideen habt wie man so was einfach lösen kann dann gerne. Ansonsten suche ich noch, tue ich eh aber das passende noch nicht gefunden :)
 
marquee ist eigentlich veraltet und nimmt man sowieso nicht mehr.
@basti1012 hat da schon ganz recht. Der marquee tag ist deprecated und sollte nicht mehr verwendet werden. Im Moment funktioniert er noch in den gängigen Browsern, doch in näherer Zukunft wird dieses Feature entfernt werden und nicht mehr funktionieren. Es ist also empfehlenswert hier mit JavaScript und CSS zu arbeiten. Falls dir das im Moment zu komplex erscheint, informiere dich genauer oder, wenn es wirklich nicht anders geht, schaue nach Vorlagen im Internet.

Ich versuche alles mir html und javascript zu lösen.
Falls sich das darauf bezieht, dass Ajax angeblich kein JS sein soll, dann ist dies eine Missinformation. Ajax ist sehr wohl eine JavaScript-Methode und hat, da du eh jQuery schon verwendest, auch einen sehr einfachen Syntax.

Wenn ich mach HTML Part refreshen suche finde ich auch viele javascripte.. bin aber zu schlecht in Java um die umzuschreiben.
Diese Aussage verwirrt mich etwas. JavaScript in Java umschreiben? Was soll das heißen? JavaScript ist JavaScript und Java ist Java. Die beiden Sprachen haben nichts gemeinsam, außer den ähnlichen Namen.

einfach alle 5 Minuten resetten oder refreshen.
Ich persönlich habe noch nicht mit Google Docs und ihrer API gearbeitet. Im Prinzip ist das aber ein Ansatz, der mir Valide erscheint. In diesem Falle würde sich ja eine setInterval() Funktion anbieten, die in ihrem Funktionsparameter dann die Daten erneut über die API holt. Die Methode dafür wirst du ja eh schon benutzt haben, um beim initialen Laden etwas anzuzeigen, genauere Informationen gibt es aber in ihrer Dokumentation.
 
Zuletzt bearbeitet:
Werbung:
Ok, allgemein viel dazu gelernt :)
Ich kannte den Ajax als Begriff nicht so wirklich, oft gehört sogar mit copy and paste benutzt aber ich wusste nicht mal das es Ajax ist. Ich dachte das es eine eigene Programmiersprache ist.
Möchte mich da auch demnächst bisschen mehr vertiefen.
Als ich vorhin JAVA sagte, meinte ich Javascript, wollte es nur abkürzen. Sorry!!!
Das ich HTML marquee benutze stört mich momentan nicht, dies muss kein java sein. Ich hab einfach auf das einfachste gegriffen. Wäre es jedoch Javascript, wüsste ich dennoch nicht wie ich es alle x sekunden/minuten automatisch aktualisieren könnte.
Hab es mir irgendwie einfacher vorgestellt.
 
Wenn du Javascript abkürzen willst dann schreib JS, dann weiß auch jeder bescheid .
Wenn ich das richtig sehe sollte das reichen wenn du
Code:
$(function() {
  function run(){
    google.script.run.withSuccessHandler(showMenu1)
    .getMenuListFromSheet1();
  }
  run();
  setInterval(run, 120000);
});
das so änderst. Kenne die goggle scripte nicht die da hinter sitzen , doch denke das er so alle 2 Minuten die Daten neu holen sollte. Falls nicht solltest du mal alles zeigen was da noch zugehört.

Wenn man das mal sehen könnte wie Google die Daten sendet ( jason oder so ) , könnte man das vieleicht auch anders machen und gleich auch ohne das maquee
Wie schon gesagt wurde, geht es noch bei einigen Browser , aber das kann beim nächsten Browser Update dann schon anders sein und dein marquee läuft auf einmal nicht mehr
 
Werbung:
Zurück
Oben