jpg图像可以支持动画吗?

Ash*_*ish 28 animation jpeg

jpeg图像

上面的jpg图像是如何动画的?据我所知jpg格式不支持动画.

Nol*_*rin 40

不,JPEG文件格式没有固有的动画支持.

您链接的图像实际上是一个伪装成jpg文件扩展名的动画GIF .(在这种情况下,浏览器显然忽略了MIME类型并查看文件头字节.)


aio*_*obe 14

如果您在firefox中查看图像,可以右键单击它并选择属性:

你会看到的 Type: GIF image (animated, 54 frames)

因此,它是一个已重命名为.jpg的gif图像.

  • 我喜欢Firefox进行Web开发的另外一个原因.您甚至不需要查看属性,它位于标题栏中(带有尺寸)! (2认同)

m0s*_*m0s 5

这是一个 GIF 图像...扩展名已手动更改。浏览器引擎足够智能,无论文件扩展名如何,都可以确定图像格式。


K0D*_*D3R 5

var c = 1;

/* Preloading images */
var image1 = new Image();
image1.src = "a1.jpg";
var image2 = new Image();
image2.src = "a2.jpg";
var image3 = new Image();
image3.src = "a3.jpg";
var image4 = new Image();
image4.src = "a4.jpg";
var image5 = new Image();
image5.src = "a5.jpg";

function disp_img(w)
   {
   if (c == 6)
      {
      c = 1;
      }
   var img_src = "a" + c + ".jpg";
   document.ani.src = img_src;
   c++;
   }
t = setInterval("disp_img(c)", 1000);
Run Code Online (Sandbox Code Playgroud)


isy*_*ync 5

为了完整起见,我想指出我的是Motion-JPEG - 一种jpg动画.

MJPEG通常由网络摄像头生成,是一个连接在一起的JPEG文件流,一个接一个,有时由HTTP标头分隔,并由具有多部分/ x混合替换的MIME类型的webcam-web服务器提供服务; boundary =,其中boundary =定义分隔符.

在github上搜索动画JPEG相关项目会产生两个结果:

  1. 如果人们关心动画GIF的大小,他们会将其剥离为单独的JPG帧,并告诉浏览器通过一些JavaScript代码就地交换这些帧.对于例子.(帕维尔的回答)

  2. 然后实际上是一个提议的动画JPEG标准,它源于MJPEG并在每个JPG帧中声明帧速率等等.不太可能很快到达浏览器.

最后,我见过图像托管人用G4的mp4版本代替大型动画GIF进行演示,还有一些Javascript用于为下载/不支持的浏览器提供实际的GIF.

不,JPEG本身,通过JFIF,不提供设置本身动画JPG文件的工具,就像Noldorin在所选答案中已经注意到的那样.:耸肩: