Статистика Форума
Последние обновленные темы Самые популярные темы Самые активные Новые участники
  • Профиль для ucoz в нижнем правом углу сайта (0)
  • Красивый информер для файлов ucoz (0)
  • Уведомления о регистрации для ucoz (0)
  • Форма входа на uCoz (0)
  • Новый Топ пользователей с аватарами для Ucoz (0)
  • Простой и красивый вид формы опроса (0)
  • Красивый информер "кто нас сегодня посетил" для Ucoz (0)
  • Flash радио для сайта (0)
  • vLineAge2.ru приглашает сразу после конца света, 22.12, 17.00 МСК! (0)
  • Проект vLineAge2.ru приглашает Вас 19.10.2012 в 19.00 мск! (0)
  • Считаем до 300 (12)
  • Флуд смайлами ! :) (5)
  • Virtus.pro больше нет О_О (4)
  • Закончи фразу своими словами (4)
  • Анекдоты (4)
  • Заявка by Oklick (3)
  • Заявка (3)
  • вступление в клан walle (3)
  • ke! (2)
  • Заявка by Felix Cartal (1)
  • Rom@rio
  • Marsellе
  • Onlines
  • laym
  • startsmart
  • Meetwoor
  • SpOoN
  • HooLiGaN
  • koTeHok
  • Frey_73
  • Unleashed
  • Neadekvat^
  • Psycho
  • RICHARD26
  • kIL1o
  • Centr
  • ARgoN
  • dingo
  • Sm0kE
  • 6gg
  • Meetwoor16:46
    Amsterdam05:42
    TheVlad18:30
    Yuki18:19
    aidara12:23
    csskachat23:15
    DoG19:27
    Djalex8014:00
    tubaretka201210:15
    Onlines16:56
    GAGARIN2114:45
    Ak-47_kz17:15
    BanDiT23:50
    knifelol13:32
    RICHARD2601:28
    startsmart00:27
    laym09:15
    yyyyy20:46
    danbdan16:34
    Crisis204:30


    [ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
    • Страница 1 из 1
    • 1
    Модератор форума: Rom@rio  
    Форум » uCoZ » Другие скрипты » Скрипт отражение Аватара на форуме
    Скрипт отражение Аватара на форуме
    Rom@rioДата: Среда, 06.01.2010, 19:56 | Сообщение # 1
    Генералиссимус
    Группа: Администраторы
    Сообщений: 52
    Репутация: 4
    Статус:
    Награды
    За создание сайта
    Бог сайта и форума За дизайнерские умения За хорошую посещаемость на форуме

    Панель управления>управление дизайном>>общий вид форума и между тегами head-head ставим вот этот код:
    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>



     
    Форум » uCoZ » Другие скрипты » Скрипт отражение Аватара на форуме
    • Страница 1 из 1
    • 1
    Поиск:

     



    Дизайн сделал HeJIe/7ocTb