Hallo zusammen,
bin gerade dabei meine Site responsive zu machen mittels dem boostrap Framework. Die Inhalte werden allesamt per php dynamisch aus der Datenbank gelesen.
Folgendes Problem:
Ich schaffe es nicht wirklich alles runter bis zur Breite 320px nur mit css anzupassen sondern muß bei einigen Inhalten ab einer bestimmten Bildschirmbreite meine php-scripts anpassen und eine Alternative ausgeben. php sollte aber bereits beim ersten Seitenaufruf die Bildschirmbreite des browsers kennen.
Lösungsversuch:
1) ich rufe im head der html eine javascript funktion auf die die Bildschirmbreite per window.matchMedia ermittelt und einen parameter an ein php script übergibt (code siehe unten)
2) das php script schreibt die Bildschirmweite in eine mysql datenbank (code denke nicht nötig)
3) dann solte ein php script was inhalte erzeugt die Bildschirmweite aus der Datenbank lesen und die Inhalte richtig erzeugen (code denke nicht nötig)
Problem: (eigentlich logisch)
das ganze funktioniert leider immer erst ab dem zweiten Seitenaufruf (mit der Seitenbreite der letzten Seite) , da das Javasrcipt erst nach dem Laden der Seite im Browser ausgeführt wird.
Könnt Ihr mir da weiterhelfen ?
entweder sollte es ne Möglichkeit geben das JS ganz am Anfang laufen zu lassen bevor das Ausgabe-php läuft oder .... ? hoffe Ihr habt ne Idee. Sitze schon seit 2 Tage und komme nicht weiter.
danke
Rolf
Code zu Lösungsversuch 1)
---------------------------------------------
function responsive()
{
if (window.matchMedia("(min-width:1px)").matches) {
var mq = "1-319px";
}
if (window.matchMedia("(min-width:320px)").matches) {
var mq = "320-499px";
}
if (window.matchMedia("(min-width:500px)").matches) {
var mq = "500-639px";
}
if (window.matchMedia("(min-width:640px)").matches) {
var mq = "ueber640px";
}
$.ajax({
type: "POST",
url: "../123/php/responsive_speichern.php",
data: {name1: mq},
});
}
bin gerade dabei meine Site responsive zu machen mittels dem boostrap Framework. Die Inhalte werden allesamt per php dynamisch aus der Datenbank gelesen.
Folgendes Problem:
Ich schaffe es nicht wirklich alles runter bis zur Breite 320px nur mit css anzupassen sondern muß bei einigen Inhalten ab einer bestimmten Bildschirmbreite meine php-scripts anpassen und eine Alternative ausgeben. php sollte aber bereits beim ersten Seitenaufruf die Bildschirmbreite des browsers kennen.
Lösungsversuch:
1) ich rufe im head der html eine javascript funktion auf die die Bildschirmbreite per window.matchMedia ermittelt und einen parameter an ein php script übergibt (code siehe unten)
2) das php script schreibt die Bildschirmweite in eine mysql datenbank (code denke nicht nötig)
3) dann solte ein php script was inhalte erzeugt die Bildschirmweite aus der Datenbank lesen und die Inhalte richtig erzeugen (code denke nicht nötig)
Problem: (eigentlich logisch)
das ganze funktioniert leider immer erst ab dem zweiten Seitenaufruf (mit der Seitenbreite der letzten Seite) , da das Javasrcipt erst nach dem Laden der Seite im Browser ausgeführt wird.
Könnt Ihr mir da weiterhelfen ?
entweder sollte es ne Möglichkeit geben das JS ganz am Anfang laufen zu lassen bevor das Ausgabe-php läuft oder .... ? hoffe Ihr habt ne Idee. Sitze schon seit 2 Tage und komme nicht weiter.
danke
Rolf
Code zu Lösungsversuch 1)
---------------------------------------------
function responsive()
{
if (window.matchMedia("(min-width:1px)").matches) {
var mq = "1-319px";
}
if (window.matchMedia("(min-width:320px)").matches) {
var mq = "320-499px";
}
if (window.matchMedia("(min-width:500px)").matches) {
var mq = "500-639px";
}
if (window.matchMedia("(min-width:640px)").matches) {
var mq = "ueber640px";
}
$.ajax({
type: "POST",
url: "../123/php/responsive_speichern.php",
data: {name1: mq},
});
}
[FRAGE] Media Queries (screenwidth) an PHP senden - javascript zu spät (php bereits gelaufen)
Aucun commentaire:
Enregistrer un commentaire