Einloggen mit Benutzername, Passwort und Sitzungslänge

Autor Thema: kleiner Designfehler bei 4:3 Monitoren  (Gelesen 7832 mal)

Kyuraan

  • Gast
kleiner Designfehler bei 4:3 Monitoren
« am: Februar 23, 2015, 06:31:52 Nachmittag »


Oben rechts, da kommt man teilweise nicht mehr an die drunter liegenden Buttons, es sei denn man ruft die Meldungen wieder auf. 24 Pixel weiter unten würden ja reichen.

Dann ist mir noch aufgefallen, dass bei weggedrückter Reise, der Counter in der Titelleiste nicht mehr funktioniert.


Antw:kleiner Designfehler bei 4:3 Monitoren

Sack

  • Legende
  • *****
  • Beiträge: 148
  • Charakter: Sack
Antw:kleiner Designfehler bei 4:3 Monitoren
« Antwort #1 am: Februar 23, 2015, 08:44:23 Nachmittag »


Oben rechts, da kommt man teilweise nicht mehr an die drunter liegenden Buttons, es sei denn man ruft die Meldungen wieder auf. 24 Pixel weiter unten würden ja reichen.

Dann muss aber auch die Breite des Divs angepasst werden. "staticInfoBoxesIcons" ist standardmäßig 200px Beit. Du könntest dir durch das versetzen um 24px nach unten dann zwar das Menü anzeigen lassen, aber keinen der Punkte auswählen, weil da ein durchsichtiges Div drüber liegt.

Wenn ich es richtig im Kopf habe gibt es ein JS Script auf der Seite, welches die InfoboxIcons bis zu einer bestimmten Bildschirmgröße auch an einer anderen Stelle einbindet. (im Frame bei den Infoboxen). Das war zwar früher schon ein wenig verbuggt, aber jetzt scheint es gar nicht mehr zu greifen. Leider finde ich das auf der Seite nicht um es mir anzusehen.

Einfachster Borschlag für Bernhard um eine generelle Funktionsfähigkeit auf kleineren Bildschirmen zu gewährleisten:
Mach bei der id #staticInfoBoxesIcons aus "right:5px" einfach "left:5px" (o.ä.). Dann werden die Boxen zwar auf der linken Seite angezeigt, aber zumindest ist das Menü wieder nutzbar.

Dann ist mir noch aufgefallen, dass bei weggedrückter Reise, der Counter in der Titelleiste nicht mehr funktioniert.



Das gilt leider für jede Aktion, nicht nur Reisen. :(

Lösungsvorschlag für Bernhard: Was hälst du davon den JS des Timers nicht in das DIV einzubauen, sondern "einfach so" auf die Seite? Da müsste dann natürlich noch in das Script eine Abfrage abgebaut werden, ob der Timer auf der Webseite angezeigt werden soll, oder nicht.
(War jetzt ein spontaner Gedanke, habe mir den Code noch gar nicht angesehen)

Siehe Unten!
« Letzte Änderung: Februar 23, 2015, 11:53:58 Nachmittag von Sack »

Antw:kleiner Designfehler bei 4:3 Monitoren

Looky

  • Lernender
  • **
  • Beiträge: 33
  • Charakter: Looky
Antw:kleiner Designfehler bei 4:3 Monitoren
« Antwort #2 am: Februar 23, 2015, 10:36:38 Nachmittag »
Wenn ich es richtig im Kopf habe gibt es ein JS Script auf der Seite, welches die InfoboxIcons bis zu einer bestimmten Bildschirmgröße auch an einer anderen Stelle einbindet. (im Frame bei den Infoboxen). Das war zwar früher schon ein wenig verbuggt, aber jetzt scheint es gar nicht mehr zu greifen. Leider finde ich das auf der Seite nicht um es mir anzusehen.

Schau dir mal die staticBoxes.js an. Denke du meinst die Funktion:
function placeStaticInfoBoxIcons ()
{
    if (Artharia.screenSize <= 800 ||
       ($("#staticInfoBoxesIcons img").size()*62)/$("#staticInfoBoxesIcons").width() > 2)
       {
           obj  =   $("#staticInfoBoxesIcons").detach();
           $("#contentAd").after(obj);
           obj.after("<br clear='all' />");
       }
       
   else
       $("#staticInfoBoxesIcons").prependTo("body");
}
Sieht ziemlich gut mit der aus. Super Vorschlag von Sack, das würde ich mir sogar auf einem großen Bildschirm als Standard einstellen.
« Letzte Änderung: Februar 23, 2015, 10:40:18 Nachmittag von Looky »

Antw:kleiner Designfehler bei 4:3 Monitoren

Sack

  • Legende
  • *****
  • Beiträge: 148
  • Charakter: Sack
Antw:kleiner Designfehler bei 4:3 Monitoren
« Antwort #3 am: Februar 23, 2015, 10:57:07 Nachmittag »
Schau dir mal die staticBoxes.js an. Denke du meinst die Funktion:
function placeStaticInfoBoxIcons ()
{
    if (Artharia.screenSize <= 800 ||
       ($("#staticInfoBoxesIcons img").size()*62)/$("#staticInfoBoxesIcons").width() > 2)
       {
           obj  =   $("#staticInfoBoxesIcons").detach();
           $("#contentAd").after(obj);
           obj.after("<br clear='all' />");
       }
       
   else
       $("#staticInfoBoxesIcons").prependTo("body");
}
Sieht ziemlich gut mit der aus. Super Vorschlag von Sack, das würde ich mir sogar auf einem großen Bildschirm als Standard einstellen.

Richtig! Die meinte ich :) Super, dass du die gefunden hast.

@Bernhard: Falls du das anpassen willst hätte ich zwei recht simple Vorschläge (bei denen ich die sonstigen Konsequenzen allerdings leider nicht überblicken kann)
1. in Artharia.js in der funktion getScreenSize den Wert Artharia.screenSize überall da auf  800 setzen wo es aktuell zu fehlern kommt. Das ist AFAIK bei einer Breite bis zu 1280 der Fall.
else if ((screen.width>=1280) && (screen.height>=1024))
        {
            general.attr("href", path+"1280x1024.css");
            Artharia.screenSize =   800;
        }
        else if ((screen.width>=1024) && (screen.height>=768))
        {
            general.attr("href", path+"1024x768.css");
            Artharia.screenSize =   800;
        }

oder 2. (vermutlich besser, da die Konsequenzen leichter einschätzbar sind) in der Datei staticBoxes.js in der Funktion placeStaticInfoBoxIcons
if (Artharia.screenSize <= 800 || auf
if (Artharia.screenSize <= 1280 || anpassen.

Sieht ziemlich gut mit der aus. Super Vorschlag von Sack, das würde ich mir sogar auf einem großen Bildschirm als Standard einstellen.

Wenn du dir das wirklich als Standard haben willst pack dir das mit in dein Script: (und natürlich ggf. noch ein passendes margin-top)

Artharia.screenSize = 700;

Außerdem habe ich mir den Counter nochmal angesehen.

Hier gibt es das script littleActionCounter.js
Die arbeitet mit 3 Timestamps, welche in dem DIV in der klasse "actionInfo" liegen. (http://prntscr.com/6907ki)
Mein Vorschlag:
Die 3 Timestamp Attribute nicht in dem DIV unterbringen, sondern in dem DIV "#staticInfoBoxes":
<div id="staticInfoBoxes" timestampStart="1424728374" timestampEnde="1424737374" timestamp="1424728374">
Dann noch den littleActionCounter.js so umbauen:

/*
 * Just a small snippet for an action counter in the actionInfo.tpl
 */

if(typeof window.littleCounter != 'function')
{
    function littleCounter (add)
    {
        begin   =   parseInt($("#staticInfoBoxes").attr("timestampStart"));
        end     =   parseInt($("#staticInfoBoxes").attr("timestampEnde"));
        now     =   parseInt($("#staticInfoBoxes").attr("timestamp")) + parseInt(add);
        diff    =   end - begin;
        toNow   =   end-now;

        if (toNow <= 0)
        {
            Artharia.successNotification("Aktion vollendet - Seite wird in zehn Sekunden automatisch aktualisiert!");
            setTimeout('window.location = window.location.href;', 10000);
        }

        // Update process
        if ($(".actionInfo").length>0){//Infobox Sichtbar? Dann updaten!
        $(".actionInfo").find("span:eq(3)").html(Math.round(((now - begin) / diff) * 100)+"%");
        )
        // Show rest
        hours   =   Math.floor(toNow / 3600);
        minutes =   Math.floor((toNow-hours*3600) / 60);
        seconds =   toNow - hours * 3600 - minutes * 60;
        hours   =   (hours < 10) ? "0"+hours : hours;
        minutes =   (minutes < 10) ? "0"+minutes : minutes;
        seconds =   (seconds < 10) ? "0"+seconds : seconds;
        if ($(".actionInfo").length>0){
        $(".actionInfo").find("span:eq(2)").html(hours+":"+minutes+":"+seconds);
        }
        document.title = 'Artharia ('+hours+":"+minutes+":"+seconds+")";

        // Timeout!
        if (toNow > 0)
            setTimeout ("littleCounter("+(add+1)+");", 1000);
    }
}
    setTimeout ("littleCounter(1);", 1000);
    action_createTokenedURL();


Und so wie ich mir das denke sollte es dann funktionieren. (Sofern der Counter wirklich nur für die aktuell ausgeführte Aktion genutzt wird. Ansonsten bescheid sagen, dann schau ich mir das nochmal an)


@looky: Was hälst du davon?


Ich hoffe ich konnte ein wenig helfen :D
« Letzte Änderung: Februar 23, 2015, 11:50:13 Nachmittag von Sack »