MGDC

MGDC (http://www.mgdc.ru/board/index.php)
-   Bugs & features (http://www.mgdc.ru/board/forumdisplay.php?f=53)
-   -   полезный скрипт (http://www.mgdc.ru/board/showthread.php?t=1473)

Bers 07.10.2005 18:57

полезный скрипт
 
предлагаю к использованию полезный скрипт
Код:

<script language="Javascript" type="text/javascript">
<!--
var zoomableClass = "zoomable";
var zoomedClass = "x2";
var zoomables, origWidth, origHeight;
function initZoomer() {
zoomed = document.getElementsByClass(zoomedClass);
for (i=0;i<zoomed.length;i++) {
zoomHeight = zoomed[i].height*2;
zoomWidth = zoomed[i].width*2
zoomed[i].width = zoomWidth;
zoomed[i].height = zoomHeight;
}
zoomables = document.getElementsByClass(zoomableClass);
origWidth = new Array();
origHeight = new Array();
for (i=0;i < zoomables.length;i++) {
if (document.addEventListener)
zoomables[i].addEventListener('click',zoomImg,false);
else
zoomables[i].onclick = zoomImg;
origWidth[i] = zoomables[i].width;
origHeight[i] = zoomables[i].height;
}}
function zoom(e) {
if (document.addEventListener)
e.addEventListener('click',zoomImg,false);
else
e.onclick = zoomImg;
}
function x2(e) {
zoomHeight = e.height*2;
zoomWidth = e.width*2
e.width = zoomWidth;
e.height = zoomHeight;
}
function zoomImg(e) {
if (e) {
ctrlKey = e.ctrlKey;
altKey = e.altKey;
shiftKey = e.shiftKey;
}
else {
ctrlKey = event.ctrlKey;
altKey = event.altKey;
shiftKey = event.shiftKey;
}
for (i=0;true;i++) {
if (this == zoomables[i]) {
if (ctrlKey || altKey || shiftKey) zoomOut(i)// If any zoomed out key is pressed, zoom out (duh)
else zoomIn(i) // Else zoom in (again, duh)
break // break infinite loop
}
if (i == zoomables.length) {
index = zoomables.length;
zoomables[index] = this;
origWidth[index] = this.width;
origHeight[index] = this.height;
i--;
}}}
function zoomIn(i) {
zoomValue = zoomables[i].width/origWidth[i];
zoomValue++;
zoomables[i].width = origWidth[i]*zoomValue;
zoomables[i].height = origHeight[i]*zoomValue;
}
function zoomOut(i) {
 zoomValue = zoomables[i].width/origWidth[i];
zoomValue--;
if (zoomValue != 0) {
zoomables[i].width = origWidth[i]*zoomValue;
zoomables[i].height = origHeight[i]*zoomValue;
}}
document.getElementsByClass = function ( name ) {
var all, ret = new Array();
all = document.body.getElementsByTagName('IMG');
for ( i = 0; i < all.length; i++ ) {
if ( all[i].className.toLowerCase() == name.toLowerCase() )
ret[ret.length] = all[i];
}
return ret;
}
window.onload = initZoomer;
//-->
</script>

использование оного приводит к возможности зумить все картинки с помощью нажатия на ононую левой клавишой мыши

Mihalych 07.10.2005 18:59

Цитата:

Сообщение от Bers
предлагаю к использованию полезный скрипт
...
использование оного приводит к возможности зумить все картинки с помощью нажатия на ононую левой клавишой мыши

Угумс, будем думать как прикрутить.

Bers 07.10.2005 19:03

забыл надо еще

Код:

<script language="Javascript" type="text/javascript">
<!--
var zoomableClass = "zoomable";
var zoomedClass = "x2";
var zoomables, origWidth, origHeight;
function initZoomer() {
zoomed = document.getElementsByClass(zoomedClass);
for (i=0;i<zoomed.length;i++) {
zoomHeight = zoomed[i].height*2;
zoomWidth = zoomed[i].width*2
zoomed[i].width = zoomWidth;
zoomed[i].height = zoomHeight;
}
zoomables = document.getElementsByClass(zoomableClass);
origWidth = new Array();
origHeight = new Array();
for (i=0;i < zoomables.length;i++) {
if (document.addEventListener)
zoomables[i].addEventListener('click',zoomImg,false);
else
zoomables[i].onclick = zoomImg;
origWidth[i] = zoomables[i].width;
origHeight[i] = zoomables[i].height;
}}
function zoom(e) {
if (document.addEventListener)
e.addEventListener('click',zoomImg,false);
else
e.onclick = zoomImg;
}
function x2(e) {
zoomHeight = e.height*2;
zoomWidth = e.width*2
e.width = zoomWidth;
e.height = zoomHeight;
}
function zoomImg(e) {
if (e) {
ctrlKey = e.ctrlKey;
altKey = e.altKey;
shiftKey = e.shiftKey;
}
else {
ctrlKey = event.ctrlKey;
altKey = event.altKey;
shiftKey = event.shiftKey;
}
for (i=0;true;i++) {
if (this == zoomables[i]) {
if (ctrlKey || altKey || shiftKey) zoomOut(i)// If any zoomed out key is pressed, zoom out (duh)
else zoomIn(i) // Else zoom in (again, duh)
break // break infinite loop
}
if (i == zoomables.length) {
index = zoomables.length;
zoomables[index] = this;
origWidth[index] = this.width;
origHeight[index] = this.height;
i--;
}}}
function zoomIn(i) {
zoomValue = zoomables[i].width/origWidth[i];
zoomValue++;
zoomables[i].width = origWidth[i]*zoomValue;
zoomables[i].height = origHeight[i]*zoomValue;
}
function zoomOut(i) {
 zoomValue = zoomables[i].width/origWidth[i];
zoomValue--;
if (zoomValue != 0) {
zoomables[i].width = origWidth[i]*zoomValue;
zoomables[i].height = origHeight[i]*zoomValue;
}}
document.getElementsByClass = function ( name ) {
var all, ret = new Array();
all = document.body.getElementsByTagName('IMG');
for ( i = 0; i < all.length; i++ ) {
if ( all[i].className.toLowerCase() == name.toLowerCase() )
ret[ret.length] = all[i];
}
return ret;
}
window.onload = initZoomer;
//-->
</script>

кроме этого еще и к картинкам которые надо зумить добавлять
Код:


<img onload="zoom(this)" src="****.gif" border="0">


Max Stalker 19.05.2006 12:45

А может с новой версией форума мы наконец-то получим такую фишечку ? Хотя бы в разделе пиксель-арт :rolleyes:

Bers 22.05.2006 03:44

если нет то я вполне могу поделиться Proximitron'ом с настройкой


Часовой пояс GMT +4, время: 12:02.

vBulletin® Version 3.6.10.
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Перевод: zCarot