Frage

Gibt es eine einfache Möglichkeit, Browser daran zu hindern, Bilder herunterzuladen und anzuzeigen, am besten über ein Magic -Style -Tag oder Javasctipe.

Die Sache ist, ich möchte die Website des Unternehmens ein wenig optimieren, um über mobile Geräte nutzbarer zu werden. Das Unternehmen ist ein Gaming, es gibt 5 MBs Bilder auf seiner Hauptseite (und diese können nicht berührt werden). Sie zeigen löschlich tödlich langsam auf meiner DSL, und sie können Mörder für jemanden sein, der für seine GPRS pro MB bezahlt;)

Der Code der Seite gehört nicht mir und sollte auch nicht berührt werden (tatsächlich sollte er von Grund auf neu geschrieben werden, aber es ist nicht in meiner Geste, es jetzt zu tun) :) :) :) :)

Ich dachte über zwei Lösungen nach:

1) Wenn es irgendeine Art von Stilmark (oder vielleicht ein JavaScript? Das, das auf mobilen Browsern funktioniert) gäbe, das den Browser daran hindert, Bilder herunterzuladen und zu zwingen, Alt-Parameter stattdessen anzuzeigen, könnte ich diesen Stil einfach anbringen, wenn ich ich entdeckte eine Benutzer-Agent, um eine bekannte mobile Sache zu sein. oder 2) Ich könnte den Webserver ein wenig optimieren, um den Benutzer-Agent-Header zu überprüfen, und wenn Client stattdessen ein Bild (.png, .gif und .jpg) anfordert, senden Sie stattdessen 404. Das hat einen Nachteil - ich möchte dem Benutzer erlauben, Bilder anzusehen, wenn er tatsächlich will.

Es scheint, dass die erste Lösung am besten wäre - was denkst du? Und gibt es einen JavaScript -Weg, dies zu tun?

Ich könnte versuchen, Dokument DOM zu erstellen, dann alles bekommen <img> Elemente und ersetzen Sie ihre src Mit einem Platzhalter auch aber funktioniert das in den meisten mobilen Browsern (Opera mini, nehme an, das Windows Mobile Thingy, den grundlegenden Symbian -Browser aus Nokia)? Und würde das Spielen mit Dokument DOM eine gute Lösung auf einem mobilen Gerät sein (ich bin mir nicht sicher, ob es sich um die Speicher- und CPU-Anforderungen handelt, um ehrlich zu sein).

War es hilfreich?

Lösung

Sie können HTAccess verwenden, um Bildanforderungen von mobilen Browserbenutzern umzuleiten. Ich habe das nicht getestet, aber es sollte funktionieren:

RewriteCond %{HTTP_USER_AGENT} (nokia¦symbian¦iphone¦blackberry) [NC] 
RewriteCond %{REQUEST_URI} !^/images/$
RewriteRule (.*) /blank.jpg [L]

Dieser Code leitet alle Anforderungen an Dateien im Bildordner von Nokia, Symbian, iPhone und Blackberry in eine leere Bilddatei um.

Andere Tipps

Ich würde mich nicht auf JavaScript oder eine andere Client -Seitenmethode mit mobilen Browsern verlassen. Die meisten mobilen Browser unterstützen JavaScript einfach nicht gut genug.

Eine Serverseite "Verzweigungen" ist wahrscheinlich der richtige Weg. Und vergessen Sie nicht, die CSS -Hintergrundbilder zu deaktivieren, während Sie dabei sind.

Warum nicht benutzen Alternative Stilblätter? Ich weiß einfach nicht, wie gut sie von mobilen Browsern unterstützt werden.

Sie können ein separates CSS für mobile Geräte angeben:

<link rel="stylesheet" media="screen,projection,tv" href="main.css" type="text/css">
<link rel="stylesheet" media="handheld" href="smallscreen.css" type="text/css">

In diesem CSS überschreiben Sie die Anzeige von <img> und alle Hintergrundbilder.

Das ist wie das Spoofing Ihres Benutzeragenten. Wenn sie wirklich die Vollversion wollen, gib sie ihnen einfach. Fügen Sie vielleicht einen Vorschlag an Blackberry -Benutzer hinzu, sich mit dem Hersteller über das Fehlen einer solchen Option zu beschweren.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top