Вторник, 14.05.2024, 05:50
Приветствую Вас Гость | RSS



Шаблоны для ucoz
Категории раздела
Наш опрос
Конец света в 2012 году реален?
Всего ответов: 801
Инфо блок
У нас вы можете: скачать шаблоны для ucoz, найти шаблоны ucoz с рабочим конструктором, скачать рабочий шаблон для ucoz, игровые шаблоны для ucoz, шаблон для сайта ucoz на тему cs, или же

ucoz шаблоны бесплатно

скачать шаблон для сайта ucoz

шаблоны кс для ucoz

светлый шаблон для ucoz
шаблон форума для ucoz


Главная » Файлы » красивые шаблоны [ Добавить материал ]

Стеклянное отражение аватаров на форуме.

12.03.2009, 19:06


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>


Скачать новый Стеклянное отражение аватаров на форуме. бесплатно.
Категория: Скрипты, другое | Добавил: aero1
Просмотров: 532 | Загрузок: 0 | Комментарии: 4 | Рейтинг: 0.0/0
Всего комментариев: 4
17.03.2009
4. pioneer (2day) [Материал]
а куда это вставить? ap

13.03.2009
а это толька на форуме можна ставить?

12.03.2009
2. Тёма (BuTaMuH) [Материал]

12.03.2009
1. Влад (Ze@1[0]t) [Материал]
акак сделать так чтобы с этим скриптом ава была по Ц как обычно а то у меня тона в лево ушла =)

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа
Инфо блок
У нас вы можете: скачать шаблоны для ucoz, найти шаблоны ucoz с рабочим конструктором, скачать рабочий шаблон для ucoz, игровые шаблоны для ucoz, шаблон для сайта ucoz на тему cs, или же

ucoz шаблоны бесплатно

скачать шаблон для сайта ucoz

шаблоны кс для ucoz

светлый шаблон для ucoz
шаблон форума для ucoz
Поиск
Статистика

Всего на сайте: 1
Гостей: 1
Юзеров: 0
Programpk - это ресурс, который предоставляет бесплатные шаблоны для сайта на Ucoz, также у нас есть светлые и темные шаблоны, шаблоны для cs и шаблоны для форума, и другие файлы для ваших сайтов.
Карта сайта (map1, map2, map3, map4.)
Хостинг от uCoz