Суббота, 27.04.2024, 08:16
Главная  Форум Регистрация Блог RSS
Приветствую Вас, Гость
Меню сайта
Статьи про uCoz
  • Почему кофемашины часто покупают в офисы
  • Можно ли починить айфон при разбитом дисплее
  • Когда могут пригодиться рации
  • Заказать отзывы на АВИТО у компании Upgrating
  • Что чаще всего рекламируют на билбордах в Санкт-Петербурге
  • Преимущества взрывозащитных тепловентиляторов
  • Интересные факты о майнинге криптовалют
  • Как производится регистрация прав интеллектуальной собственности
  • 5 типичных неисправностей ноутбуков
  • Многофакторная аутентификация как сервис
  • Разработка сайта
  • Что влияет на стоимость сайта?
  • Как самостоятельно создать блог без усилий
  • Как добавить карту сайта в Wordpress
  • В чем заключается SEO-продвижение сайта?
  • Продвижение ссылками – будет ли работать в 2015 году?
  • Программы обработки, сравнения и анализа прайсов
  • Комплексное продвижение сайта как основа репутационного маркетинга
  • У кого заказывать разработку сайта
  • Как создать интернет-магазин?
  • Наш опрос
    Нужны ли опросы на сайте?


    Всего ответов: 1380

    установить такой вид опроса
    Статистика
    Яндекс.Метрика
    Онлайн всего: 2
    Гостей: 2
    Пользователей: 0


    Зарегистрировано 31218 (сегодня + 0 новых, вчера + 0 новых), В каталоге файлов 1130 материала(ов), Оставлено 5173 комментариев, На форуме создано тем и ответов.

    установить такую статистику

    Блок CW результаты

    Победы
    Победы(10)

    Поражения
    Поражения(5)


    Установить CW блок на свой сайт
    Внимание!
    Наш сайт адаптирован под браузер Mozilla Firefox
    скрипты для uCoz
    Скачать/Download
    В остальных браузерах наш сайт может отображаться некорректно! (IE,Opera,Google Chrome и т.д)

    установить такой блок
    Расскажи Друзьям!
    Комментарии
    Новость: Простое серое меню для uCoz
    NataliShaman написал:
    Приветствую!
    кнопочки мне понравились... только совсем не понимаю - куда именно конкретно вставлять? в какое место в CSS? на каждой странице это делать или один раз установится для всего сайта? у меня шаблон 1088... помогите с установкой, пожалуйста...
    Новость: Простой слайдер новостей и фото изображений на uCoz
    Светлана Кулешова написал:
    Скажите, пожалуйста, а где прикрепленный архив со скриптами?
    Новость: Современные казино онлайн. Как можно выигрывать деньги?
    папап папап написал:
    зарабатывать в интернете может каждый, хочу порекомендовать статью где Вы научитесь это делать играя в казино , заходи смотри http://podshipnik-servis.ru/forum/pyat-prichin-zachem-nuzhno-poprobovat-onlayn-kazino
    Новость: Максимальные выигрыши в казино
    Максим Леонков написал:
    Добрый день, хочу поделиться информацией которая мне помогла зарабатывать в онлайн казино.http://www.rpgarea.ru/news-2890-kakie-bonusi-onlayn-kazino-bivayut-i-gde-ih-nayti.html Например какие какие бонусы онлайн казино бывают и где их найти? где найти казино с лучшими бонусами, Виды бонусов в онлайн казино, какие подарки в клубах бывают для новичков – выдают за регистрацию и активных посетителей – различные акции и пр.Заходи, читай,зарабатывай!

    Читать все комментарии
    Топ комментаторов

    установить такой информер
    VKONTAKTE

    FACEBOOK
    Главная страница » Помощь Вебмастеру » Категория Скрипты для uCoz » Добавлено [03.06.2009, 08:38]

    Эффект отражения изображения

    Войти или Зарегистрироваться [скачивать файлы могут только зарегистрированные пользователи!]



    вот сам скрипт

    Code
    <script type="text/javascript">  
    document.getElementsByClassName = function(className) {  
      var children = document.getElementsByTagName('*') || document.all;  
      var elements = new Array();  
       
      for (var i = 0; i < children.length; i++) {  
      var child = children[i];  
      var classNames = child.className.split(' ');  
      for (var j = 0; j < classNames.length; j++) {  
      if (classNames[j] == className) {  
      elements.push(child);  
      break;  
      }  
      }  
      }  
      return elements;  
    }  

    var Reflection = {  
      defaultHeight : 0.5,  
      defaultOpacity: 0.5,  
       
      add: function(image, options) {  
      Reflection.remove(image);  
       
      doptions = { "height" : Reflection.defaultHeight, "opacity" : Reflection.defaultOpacity }  
      if (options) {  
      for (var i in doptions) {  
      if (!options[i]) {  
      options[i] = doptions[i];  
      }  
      }  
      } else {  
      options = doptions;  
      }  
       
      try {  
      var d = document.createElement('div');  
      var p = image;  
       
      var classes = p.className.split(' ');  
      var newClasses = '';  
      for (j=0;j<classes.length;j++) {  
      if (classes[j] != "userAvatar") {  
      if (newClasses) {  
      newClasses += ' '  
      }  
       
      newClasses += classes[j];  
      }  
      }  

      var reflectionHeight = Math.floor(p.height*options['height']);  
      var divHeight = Math.floor(p.height*(1+options['height']));  
       
      var reflectionWidth = p.width;  
       
      if (document.all && !window.opera) {  
      /* Copy original image's classes & styles to div */  
      d.className = newClasses;  
      p.className = 'reflected';  
       
      d.style.cssText = p.style.cssText;  
      p.style.cssText = 'vertical-align: bottom';  
       
      var reflection = document.createElement('img');  
      reflection.src = p.src;  
      reflection.style.width = reflectionWidth+'px';  
       
      reflection.style.marginBottom = "-"+(p.height-reflectionHeight)+'px';  
      reflection.style.filter = 'flipv progid:DXImageTransform.Microsoft.Alpha(opacity='+(options['opacity']*100)+', style=1, finishOpacity=0, startx=0, starty=0, finishx=0, finishy='+(options['height']*100)+')';  
       
      d.style.width = reflectionWidth+'px';  
      d.style.height = divHeight+'px';  
      p.parentNode.replaceChild(d, p);  
       
      d.appendChild(p);  
      d.appendChild(reflection);  
      } else {  
      var canvas = document.createElement('canvas');  
      if (canvas.getContext) {  
      /* Copy original image's classes & styles to div */  
      d.className = newClasses;  
      p.className = 'reflected';  
       
      d.style.cssText = p.style.cssText;  
      p.style.cssText = 'vertical-align: bottom';  
       
      var context = canvas.getContext("2d");  
       
      canvas.style.height = reflectionHeight+'px';  
      canvas.style.width = reflectionWidth+'px';  
      canvas.height = reflectionHeight;  
      canvas.width = reflectionWidth;  
       
      d.style.width = reflectionWidth+'px';  
      d.style.height = divHeight+'px';  
      p.parentNode.replaceChild(d, p);  
       
      d.appendChild(p);  
      d.appendChild(canvas);  
       
      context.save();  
       
      context.translate(0,image.height-1);  
      context.scale(1,-1);  
       
      context.drawImage(image, 0, 0, reflectionWidth, image.height);  
       
      context.restore();  
       
      context.globalCompositeOperation = "destination-out";  
      var gradient = context.createLinearGradient(0, 0, 0, reflectionHeight);  
       
      gradient.addColorStop(1, "rgba(255, 255, 255, 1.0)");  
      gradient.addColorStop(0, "rgba(255, 255, 255, "+(1-options['opacity'])+")");  
       
      context.fillStyle = gradient;  
      if (navigator.appVersion.indexOf('WebKit') != -1) {  
      context.fill();  
      } else {  
      context.fillRect(0, 0, reflectionWidth, reflectionHeight*2);  
      }  
      }  
      }  
      } catch (e) {  
      }  
      },  
       
      remove : function(image) {  
      if (image.className == "reflected") {  
      image.className = image.parentNode.className;  
      image.parentNode.parentNode.replaceChild(image, image.parentNode);  
      }  
      }  
    }  

    function addReflections() {  
      var rimages = document.getElementsByClassName('userAvatar');  
      for (i=0;i<rimages.length;i++) {  
      var rheight = null;  
      var ropacity = null;  
       
      var classes = rimages[i].className.split(' ');  
      for (j=0;j<classes.length;j++) {  
      if (classes[j].indexOf("rheight") == 0) {  
      var rheight = classes[j].substring(7)/100;  
      } else if (classes[j].indexOf("ropacity") == 0) {  
      var ropacity = classes[j].substring(8)/100;  
      }  
      }  
       
      Reflection.add(rimages[i], { height: rheight, opacity : ropacity});  
      }  
    }  

    var previousOnload = window.onload;  
    window.onload = function () { if(previousOnload) previousOnload(); addReflections(); }  
    </script>

    и для теста можно поставить эту картинку

    Code
    <img class="userAvatar" src="http://allcity.net.ru/styles/prosilver/imageset/site_logo.gif" border="0">


    При копирование материалов с сайта необходимо указать активную ссылку источника - Скрипты для uCoz 2013 и Эффект отражения изображения



    Расскажи друзьям интересные новости:


    - Установить на свой сайт блок социальных закладок
    Категория: Скрипты для uCoz | Добавил: 3auka
    Просмотров: 7042 | Загрузок: 0 | Комментарии: 10 | Рейтинг: 3.0/2
    Всего комментариев: 10
    10 Усаги_Коу   (04.01.2012 17:51) [Материал]
    Спасибо)) =*

    Добавлять комментарии могут только зарегистрированные пользователи.
    [ Регистрация | Вход ]
    Для добавления необходима авторизация

    Хостинг от uCoz