Главная | Регистрация | Вход Приветствую Вас Гость | RSS
Меню сайта
Мини-чат
Пожертвование сайту
Опрос
Добавить ли на сайт шаблоны для Joomla, WordPress?
Всего ответов: 1211
Главная » 2009 » Январь » 18 » Эффект отражения изображения
Эффект отражения изображения
21:14
Вот вас скрипт
Доступно только для пользователей


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 | Просмотров: 2255 | Добавил: -=FoBoS=- | Рейтинг: 3.0/3 |
Всего комментариев: 131 2 »
+1  
13 City   (25.06.2010 01:18) [Материал]
дибилы

+1  
12 City   (24.06.2010 16:19) [Материал]
Единстенное что я здесь и вижу это кучка долбоёбов которые незнают что куда вставлять-комент Billа очень правдоподопен или вы может и бабе вставить неможете ебёте чужие мозги вот и всё angry

0  
10 KOCT9IH   (07.06.2010 02:06) [Материал]
боян dry

0  
11 -=FoBoS=-   (19.06.2010 13:05) [Материал]
боян? посотри на дато добвления январь 2009 это 2 года газад cool

0  
9 BoBaH-4eKucT   (20.03.2010 22:50) [Материал]
Все работает. Те кто не въехал куда вставлять: можно между тегами <head></head> или после них, на страницах где вы хотите чтобы этот ффект был.

+1  
8 zverek   (28.02.2010 20:08) [Материал]
куда скрипты вставлять cry

+1  
6 xXx   (18.10.2009 20:03) [Материал]
что с етим кодом делать?

0  
5 zelengur   (05.08.2009 15:42) [Материал]
е*ать х**ня !!! Куда его вставлять то????
Ответ: Ище раз увижу шо материшся в БАН пойдеш

0  
7 magnum1991   (07.02.2010 18:53) [Материал]
не всем дано понимать как скрипты ставить!админ посмотри как люди кричат!ывлажывай инструкции

0  
4 Admin3616   (21.06.2009 10:32) [Материал]
Ебн**ый мне кажется , сайт даже инструкции нету , зачем лазать тут должно быть!
Ответ: Ты что нифига не умееш, что тока по инструкции шариш делать???

-4  
3 Bill   (14.06.2009 10:14) [Материал]
ппц нубы,по форумам полазиете и узнаете!!

+3  
2 stalkerzona-gsc   (20.02.2009 14:00) [Материал]
да правдо куда???

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

Сообщения:

Группа:
Гости
Гость, мы рады вас видеть. Пожалуйста зарегистрируйтесь или авторизуйтесь!
Поиск по сайту
Календарь
«  Январь 2009  »
ПнВтСрЧтПтСбВс
   1234
567891011
12131415161718
19202122232425
262728293031
Друзья сайта
3dnews daily digital digest
Наш баннер
[ Получить код баннера]
Облакто тегов

Для красивого отображения этого блока требуетсяFlash Player 9 или выше.

Кто сегодя был на сайте
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Зарегистрировано на сайте: 14962

Новых сегодня: 0

Новых вчера: 0

Новых за неделю: 0

Новых за месяц: 0

Из них:

Новоприбывших: 14923

Проверенных: 0

Модераторов: 1

Помошник администратора: 1

Администраторов: 1

Из них:

Парней 14327

Девушек 634

1

Каталог webplus.info Проверить PR ТИЦ
Все материалы которые находятся на этом сайте могут быть использованы исключительно в ознакомительных целях! За любое нелегальное использования данных материалов ни администрация сайта ни хостинг-провайдер ответственности не несут! При копировании материала обязательно указывать рабочую ссылку на alltopc.ucoz.ru! Created by -=FoBoS=- © 2008-2024