LINUX.ORG.RU

История изменений

Исправление MiniRoboDancer, (текущая версия) :

Вот скрипт, использующий фатальный недостаток canvas:

var gifs=document.querySelectorAll('img[src$=\'gif\']');
for (var no in gifs) {
  var gif=gifs[no];
  if (typeof gif === 'function') break;
  var canvas=document.createElement('canvas');
  canvas.width=gif.width;
  canvas.height=gif.height;
  var ctx=canvas.getContext('2d');
  ctx.drawImage(gif,0,0);
  (gif.parentNode).replaceChild(canvas,gif);
};
Правда, работает он далеко не на всех гифках, на большинстве выдаёт тупо белый холст. Если будет отрабатывать до загрузки картинок — ситуация, вероятно, будет ещё плачевнее. Поищу другой способ конвертации.

Исходная версия MiniRoboDancer, :

Вот скрипт, использующий фатальный недостаток canvas:

var gifs=document.querySelectorAll('img[src$=\'gif\']');
for (var no in gifs) {
  var gif=gifs[no];
  if (typeof gif === 'function') break;
  var canvas=document.createElement('canvas');
  canvas.width=gif.width;
  canvas.height=gif.height;
  console.log(gif);
  var ctx=canvas.getContext('2d');
  ctx.drawImage(gif,0,0);
  (gif.parentNode).replaceChild(canvas,gif);
};
Правда, работает он далеко не на всех гифках, на большинстве выдаёт тупо белый холст. Если будет отрабатывать до загрузки картинок — ситуация, вероятно, будет ещё плачевнее. Поищу другой способ конвертации.