Question

Existe-t-il un moyen simple d'empêcher le navigateur de télécharger et d'afficher des images, le mieux serait d'utiliser une balise de style magique ou un javasctipe.

En fait, j'aimerais modifier un peu le site Web de l'entreprise pour qu'il soit plus utilisable via des appareils mobiles. La société est une société de jeu. Il y a environ 5 Mo d’images sur sa page principale (et celles-ci ne peuvent pas être touchées). Ils affichent déjà une lenteur mortelle sur mon DSL, et ils peuvent être des tueurs pour quelqu'un qui paie son GPRS par Mo;)

Le code de la page n'est pas le mien et ne devrait pas être touché aussi (en fait, il devrait être écrit à partir de zéro, mais ce n'est pas dans mon geste de le faire maintenant):)

Je pensais à deux solutions:

1) S'il existait une sorte de balise de style (ou peut-être un code javascript? Celui qui fonctionnerait sur les navigateurs mobiles, cela empêcherait le navigateur de télécharger des images et de forcer l'affichage du paramètre alt à la place, je pourrais simplement joindre ce style si j’ai découvert qu’un agent d’utilisateur était une chose connue en matière de téléphonie mobile. ou 2) Je pourrais légèrement modifier le serveur Web pour vérifier l’en-tête de l’agent utilisateur et, si le client demande une image (.png, .gif et .jpg), envoyer 404 à la place. Cela a un inconvénient, mais j'aimerais permettre à l'utilisateur de voir les images s'il le souhaite vraiment.

Il semble que la première solution serait la meilleure - ce que vous en pensez? Et existe-t-il un moyen javascript de le faire?

Je pourrais essayer de construire le document DOM, puis obtenir tous les <img> éléments et remplacer leur src par un espace réservé même si cela fonctionnera sur la plupart des navigateurs mobiles (Opera Mini, je suppose, le truc Windows Mobile, le Symbian de base). navigateur de Nokia)? Et pour être honnête, jouer avec le document DOM serait une bonne solution sur un appareil mobile (pour être honnête, je ne suis pas sûr de la configuration requise de la mémoire et du processeur.)

Était-ce utile?

La solution

Vous pouvez utiliser htaccess pour rediriger les demandes d'images émanant d'utilisateurs de navigateurs mobiles. Je n'ai pas testé cela, mais ça devrait marcher:

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

Ce code redirige vers un fichier image vide toutes les demandes effectuées par nokia, symbian, iphone et blackberry dans un dossier d’images.

Autres conseils

Je ne me servirais pas de javascript ni d'aucune autre méthode côté client avec les navigateurs mobiles. La plupart des navigateurs mobiles ne supportent tout simplement pas assez le javascript.

Certains " côté serveur côté serveur " est probablement la voie à suivre. Et n'oubliez pas de désactiver les images d'arrière-plan CSS lorsque vous y êtes.

Pourquoi ne pas utiliser les les feuilles de style alternatives ? Je ne sais tout simplement pas à quel point ils sont pris en charge par les navigateurs mobiles.

Vous pouvez spécifier un css séparé pour les appareils mobiles:

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

Dans ce css, vous remplacez l'affichage de <img> et de toutes les images d'arrière-plan.

Cela revient à usurper votre agent utilisateur. S'ils veulent vraiment la version complète, donnez-la-leur simplement. Ajoutez peut-être une suggestion aux utilisateurs de Blackberry de se plaindre auprès du fabricant de l'absence d'une telle option.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top