0 Пользователей и 1 Гость просматривают эту тему.
  • 5 Ответов
  • 5266 Просмотров
*

7Rei

  • Захожу иногда
  • 134
  • 20 / 0
Добрый вечер.
Необходимо на сайте все изображения сделать черно-белыми, и чтобы при наведении они становились цветными.
Вариант, с подстановкой заранее подготовленных изображений через ксс не подходит, так как изображений много.

В поиске нашел такой вариант:
<a href="http://fantasyflash.ru">
<img src=""
style="filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1)"
onmouseout="this.style.filter='progid:DXImageTransform.Microsoft.BasicImage(grayscale=1)'"
onmouseover="this.style.filter='progid:DXImageTransform.Microsoft.BasicImage(grayscale=0)'">
</a>

К сожалению работает только в ие.
Кто нибудь стакивался с подобной задачей?

Спасибо. С Ув.
*

AlterEgo

  • Захожу иногда
  • 170
  • 71 / 5
Для остальных можно использовать canvas
Вот пример:_http://deer.org.ua/2009/11/15/1/
Или поискать в Google по ключевым словам: javascript grayscale image
Есть ещё решения на основе SVG и VML. Но там свои ограничения.
*

strannik-yura

  • Давно я тут
  • 511
  • 44 / 1
  • :)
Для остальных можно использовать canvas
Вот пример:_http://deer.org.ua/2009/11/15/1/
Или поискать в Google по ключевым словам: javascript grayscale image
Есть ещё решения на основе SVG и VML. Но там свои ограничения.

этот тоже работает только в IE
*

volod3000

  • Захожу иногда
  • 379
  • 51 / 0
  • Чтобы ничего не делать, нужно многое сделать.
Вот готовое решение в виде плагина
Мало открыть человеку глаза,
большинство еще просит указать дорогу
и ждет волшебного пенделя.
*

AlterEgo

  • Захожу иногда
  • 170
  • 71 / 5
этот тоже работает только в IE
Когда это canvas стал работать только в ie? Насчет фильтра grayscale не спорю. Поэтому и предлагается совместить оба метода.
*

volod3000

  • Захожу иногда
  • 379
  • 51 / 0
  • Чтобы ничего не делать, нужно многое сделать.
Вот способ работает на все 100:

Создаем два php файла 1.php и 2.php

1.php :

Код: php
function show_grayscale($filename){
  $img_size = GetImageSize($filename);
  $width = $img_size[0];
  $height = $img_size[1];
  $img = imageCreate($width,$height);
  for ($c = 0; $c < 256; $c++) {
    ImageColorAllocate($img, $c,$c,$c);
  }
  $img2 = ImageCreateFromJpeg($filename);
  ImageCopyMerge($img,$img2,0,0,0,0, $width, $height, 100);
 
  header("Content-type: image/jpeg");
  imagejpeg($img);
 
  imagedestroy($img);
}

echo $mim = show_grayscale("77.jpeg");

2.php :

Код: php
echo '<script type="text/javascript">
function chen_sec()
    {
       document.images.myimage.src = "77.jpeg";
}
function chen_fir()
    {
       document.images.myimage.src = "1.php";
}
</script>';


echo '<img id="myimage" src="1.php"  onmouseover="chen_sec()" onmouseout="chen_fir()" />';

Файл 1.php делает изображение черно-белым, а файл 2.php совершает подмену.
« Последнее редактирование: 24.07.2010, 13:27:07 от volod3000 »
Мало открыть человеку глаза,
большинство еще просит указать дорогу
и ждет волшебного пенделя.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Сделать шапку на сайте!

Автор tsimba

Ответов: 1
Просмотров: 3048
Последний ответ 04.05.2012, 03:52:24
от tsimba
CSS - обтекание изображения текстом

Автор motley

Ответов: 3
Просмотров: 10573
Последний ответ 04.03.2012, 08:28:19
от xoxol39
Шаблон Marhance. Проблема с отображением главного меню на сайте.

Автор tkulneva

Ответов: 4
Просмотров: 2056
Последний ответ 10.11.2011, 17:09:12
от tkulneva
Проблема при использовании нескольких шаблонов на сайте

Автор Phoenix-ann

Ответов: 11
Просмотров: 2188
Последний ответ 05.08.2011, 15:59:58
от Phoenix-ann
Как сделать логотип на сайте, главной страницей по умолчанию

Автор bublik

Ответов: 15
Просмотров: 3031
Последний ответ 22.06.2011, 15:21:33
от Mihanja80