uff das soll keine große Sache werden, mein Mentor meinte ich muss die Nachricht "ENDE" so in js einbauen das ich bei bedarf die sprache ändernkann. Momentan müsste man für jede Sprache einen neuen Timer anlegen und das ist nicht günstig...
uff das soll keine große Sache werden, mein Mentor meinte ich muss die Nachricht "ENDE" so in js einbauen das ich bei bedarf die sprache ändernkann. Momentan müsste man für jede Sprache einen neuen Timer anlegen und das ist nicht günstig...
Wenn man es richtig machen will, dann ist die Lokalisierung eine große Sache
Wie gesagt, mit HTML hast du keine Kontrollmöglichkeiten. Das ist statischer Text. Erst mit Scriptsprachen, wie php oder JavaScript kann HTML in gewisser Maßen dynamisch werden, indem der Inhalt dynamisch ermittelt wird.
Du musst dir also eine Lokalisierung mittels JavaScript basteln, und wenn du danach unter Google suchst, findest du auch tausende Ansätze, wie man so was realisieren könnte. Das simpelste ist wohl ein assoziatives Array.
Dies wäre ein erster Versuch, der aber noch sehr fehleranfällig ist, und auch nicht grad effizient, da man das Array immer mitübertragen muss. Bei komplexeren Webseiten, die dann mehrere Hundert Strings besitzen, kann das Laden der Webseite ggf. länger dauern. Das ganze könnte man aber dann noch in eine Methode packen, die die Sprache des Browsers ermittelt und automatisch den lokalisierten String zurückgibt, und auch einen Default-Wert zurückgibt, falls eine Sprache ein String nicht besitzen sollte (z.B. die deutsche Übersetzung). Für die Sprache gibt es zwar die Eigenschaft language im navigator-Objekt, aber der gehört nicht zwingend zum Standard und kann u.U. in unterschiedlichen Browsern leer sein. Der IE benutzt auch stattdessen UserLanguage. Eine bessere Methode wäre die Eigenschaft Accept-Language im HTTP-Header, aber hierfür musst du eine JSON-Abfrage abfeuern. Eine effizientere Methode wäre wohl, ein Teil der Webseite mittels AJAX neuzuladen, wenn der Countdown beendet ist. Die AJAX-Abfrage würde dann ein serverseitiges Script starten, welches dann schon den lokalisierten String zurückgibt. Auch wäre es klüger, die Strings in eine Datenbank-Struktur (z.B. SQLite) abzulegen, weil so eine Struktur wartbarer und ggf. effizienter ist.
Geändert von Whiz-zarD (03.01.2014 um 10:28 Uhr)
danke das werde ich mal versuchen =)
Da fehlt mir gerade ein das in meinen Firefox Chrome IE Safarie, die eingebundenen schriften/icons nciht so scharf ausschauen wie erhoft. Ist es bei euch auch so? Mir scheint als würden die Standertschriften besserausschauen(render) als die eingebundenen, wie zum beispiel Nova oder Gotham Pro
So leute iwie bin ich kurz vorm aussrasten..
JS Funktion funktioniert
aber hier
Funktioniert es nciht
ich habe dafür dieses tutorial benutzt: Overlay js im Ordner war noch .hg_archival & .hgtags, da ich diese net brauche hab ich sie gelöscht. Ausserdem hab ich die jsin ein lyout eingefügt udn nun funzt es net mehr... wo kann der fehler sein? stören sich da zwei js files? PS: ich benutze initilizer
Kann ich jetzt so auch nicht sagen. JavaScript ist nicht so mein Fachgebiet, aber aus irgendeinem Grund registriert er diese Overlay-Erweiterung nicht.
Mir ist aufgefallen, dass du dort auch unterschiedliche jQuery Versionen benutzt. Vielleicht liegt da irgendwo der Knackpunkt. Diese Overlay-Erweiterung ist auch nicht grad neu. Die letzte Aktualisierung fand 2012 statt. Vielleicht funktioniert diese Erweiterung mit aktuelleren jQuery-Versionen nicht mehr.
nop, wir haben den Fehler gefunden. Die js nicht mehr so richtig deswegen wirds net angezeigt. Liegt am js xY, auf den wir leider keinen Zugriff haben XD
So folgende Sache ich habe eine Overlay.js geschrieben. So eine wie auf Winrar.com Quasi eine "Dont leave massage". Ich will aber gern das es nur dann aktiviert wir wenn die Maus von unten nach oben geführt wird(tabschlisen). leider funktioniert meine funktion in beide richtungen. Was muss ich machen damit es nur von unten nach oben getrackt wird? Vorschläge?
Ich versteh nicht, was du meinst, aber wenn ich dich richtig verstanden habe, dann muss immer ein Delta der Mauszeiger-Position ermittelt werden, den du dann auswertest.
Vielleicht kann man auch einen endlichen Automaten bauen, der durch Mausbewegungen seinen Zustand ändert, und dann bei einem bestimmten Zustand den Pop-Up auslöst.
Ich weiß aber nicht, wofür man sowas für eine Webseite benötigt. Mir persönlich gehen eh schon diese Warnhinweise, einiger Webseiten, auf den Sack, wenn man ein Tab schließen möchte. Das zeigt eine gewisse unseriösität, da man letztem Endes überhaupt nich weiß, was passiert, wenn man auf die Buttons klickt.
Zuerst mal: Volle Zustimmung mit Whiz-zarD. Solche Meldungen sind nur dann angemessen, wenn ein Formular angezeigt wird, das der Besucher bereits (teilweise) ausgefüllt, aber noch nicht abgesendet hat. Eine allgemeine Meldung, weil jemand die Seite verläßt, ist für mich ein guter Grund, die Seite nicht wieder zu betreten. Bei halb ausgefüllten Formularen ist die Rückfrage okay, weil man möglicherweise das Absenden vergessen hat, aber ansonsten ist es schlicht ein Versuch, den Benutzer auf einer Seite festzuhalten, die ihn gerade nicht weiter interessiert. Höchst unprofessionell.
So, nachdem das aus dem Weg ist: Sehe ich das richtig, dass du eine Aktion ausführen willst, wenn jemand mit der Maus den Viewport über den oberen Rand verläßt? Das halte ich für problematisch:
- Das Verlassen des Viewports nach oben korreliert nicht zwangsläufig mit dem Schließen des Tabs. Der Besucher könnte schlicht zu einem anderen Tab wechseln.
- Der Besucher könte auch den Viewport in eine andere Richtung verlassen und von dort aus zur Tableiste gehen, z.B. wenn er zwischendurch in eine andere Anwendung klickt. Nicht jeder hat den Browser auf Vollbild laufen.
- Man kann Tabs auch auf andere Arten schließen, z.B. über Tastenkombinationen oder Mausgesten.
- Die Methode funktioniert nicht auf Mobilgeräten, weil die in der Regel andere Events erzeugen.
Du solltest statt dessen einen Event-Handler auf beforeunload binden, welcher selbstverständlich sicher stellt, dass auch mindestens ein Formularfeld ausgefüllt ist – es macht meist keinen Sinn, zu warnen, wenn das Formular gar nicht angefaßt wurde.
Danke für diese Tipps =) Hat mir sehr geholfen. Ich konnte mein Problem lösen =D
Ihr kennt sicherlich jqueryUI ich hab mir daraus eine einfache "shake" funktion gebastelt die sogar css enthält. Ich habe dafür den Shaker Effect genutzt. Nun weiss ich aber nciht wie ich diesen effect aufrufenkan(mit hilfe eines buttons(beispiel klick. Ansich funzt alles wunderbar aber ich muss leider auf "demo-box make bg-color visibel" klicken damit es anfängt zu shaken.
onclick="myFunction() kommt also nicht in Frage da es net funzt.
ich glaube ich muss iwas mit document.getElementsByClassName machen, aber ich hab kp wie ich das machen soll damit der Button funktioniert
kann einer sagen was ich tippen muss ?
Wenn du jQuery verwenden willst, schadet es nicht sich ein wenig damit auseinander zu setzen.
In der jQuery UI API Documentation steht ja eigentlich schon drin was du brauchst:
Statt document nimmst du jetzt halt das Element, welches du mit der Funktion belegen willst.
--
THX für die antwort, ich werde ma schauen ob es klappt =)
Frage:
Ich würde gern einen dashboard erstellen wo ich namen + email + infotext einfügen kann. Ich könnte das per hand in HTML machen, jedoch will ich das gern dynamisch machen. Sprich ich hab ein extra feld wo ich alles eintragen kann + speichern. Ist es möglich das dieser Vorgang auch in offline modus funktioniert?