javascript - 一种阻止移动浏览器下载和显示图像的方法

标签 javascript http-headers mobile-website

有没有一种简单的方法来阻止浏览器下载和显示图像,最好是通过一些魔术样式标签或javasctipe。

问题是,我想稍微调整一下公司的网站,以便通过移动设备更方便使用。该公司是一家游戏公司,其主页上有大约 5MB 的图像(而且这些图像是不能动的)。它们在我的 dsl 上已经显示出极其缓慢的速度,对于按 MB 付费 GPRS 的人来说,它们可能是 killer ;)

页面的代码不是我的,也不应该碰(事实上,它应该从头开始编写,但现在不是我的姿态):)

我正在考虑两种解决方案:

1)如果有某种样式标签(或者可能是javascript?可以在移动浏览器上运行的标签)可以阻止浏览器下载图像并强制显示alt参数,我可以简单地附上这个如果我发现用户代理是一些已知的移动设备,那么风格。 或者 2)我可以稍微调整一下网络服务器来检查用户代理 header ,如果客户端请求图像(.png、.gif 和 .jpg),则发送 404。但这有一个缺点 - 如果用户确实想要的话,我希望允许他查看图像。

看来第一个解决方案是最好的 - 你们觉得呢?有没有一种 javascript 方法可以做到这一点?

我可以尝试构建文档 DOM,然后获取所有 <img>元素,并替换它们的 src甚至还有一些占位符,但这适用于大多数移动浏览器(我想是 Opera Mini,Windows Mobile 之类的东西,诺基亚的基本 Symbian 浏览器)?在移动设备上使用文档 DOM 是否是一个很好的解决方案(说实话,我不确定它的内存和 CPU 要求)。

最佳答案

您可以使用 htaccess 重定向移动浏览器用户发出的图像请求。我还没有测试过这个,但它应该可以工作:

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

此代码将 nokia、symbian、iphone 和 blackberry 对图像文件夹中的文件发出的所有请求重定向到空白图像文件。

关于javascript - 一种阻止移动浏览器下载和显示图像的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/177536/

相关文章:

javascript - 打开预先存在的页面并更改其中的一部分

javascript - 从 javascript 到片段着色器的单色

java - HTTP header 中的非法字符

http - vertx web中的header比较是否区分大小写

c# - 无法将 'Vary' header 附加到响应

html - 如何在移动网页中嵌入外部网页

android - 使用 Rhomobile 开发智能手机应用程序

javascript - 如何在 html 表格中动态添加行

javascript - 如何从输入文本中删除选定的文本?

javascript - 在 jQuery Mobile 网站中,可以将 jQuery 和 jQuery Mobile 库放在底部吗?