Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.10.2015, 22:25
Интересующийся
Отправить личное сообщение для mikhail apalaev Посмотреть профиль Найти все сообщения от mikhail apalaev
 
Регистрация: 15.10.2015
Сообщений: 13

ПОМОГИТЕ РАЗОБРАТЬСЯ КАК РАБОТАЕТ ЭТОТ СКРИПТ!
скрипт предзагрузки изображений

не понятна эта строка:

document[changeImages.arguments[i]].src = changeImages.arguments[i+1];

заранее спасибо!

<html>
<head>
<title><? echo $title; ?></title>
<meta http-equiv="Content-Type" content="text/html; charset=cp-1251">
<script language="JavaScript">
<!--

function newImage(arg) {
if (document.images) {
rslt = new Image();
rslt.src = arg;
return rslt;
}
}

function changeImages() {
if (document.images && (preloadFlag == true)) {
for (var i=0; i<changeImages.arguments.length; i+=2) {
document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
}
}
}

var preloadFlag = false;
function preloadImages() {
if (document.images) {
_13 = newImage("images/13.gif");
_14 = newImage("images/14.gif");
_15 = newImage("images/15.gif");
_16 = newImage("images/16.gif");
preloadFlag = true;
}
}

// -->
</script>
</head>
<body bgcolor=#FFF3E6 onLoad="preloadImages();" topmargin=0 rightmargin=0 leftmargin=0 marginheight=0 marginwidth=0>
<table border=0 cellpadding=0 cellspacing=0 width=100%>
<tr>
<td width=153 height=174>
<img src="images/01.gif" width=153 height=174></td>
<td width=153 height=174>
<img src="images/02.gif" width=153 height=174></td>
<td width=153 height=174>
<img src="images/03.gif" width=153 height=174></td>
<td width=153 height=174>
<img src="images/04.gif" width=153 height=174></td>
<td width=136 height=174>
<img src="images/05.gif" width=136 height=174></td>
<td width=100% height=212 rowspan=3 background="images/06.gif">&nbsp;
</td>
</tr>
<tr>
<td width=153 height=32>
<a href="index1.html"
onmouseover="changeImages('_07', 'images/13.gif'); return true;"
onmouseout="changeImages('_07', 'images/07.gif'); return true;">
<img name="_07" src="images/07.gif" width=153 height=32 border=0 title="кнопка 1"></a></td>
<td width=153 height=32>
<a href="index2.html"
onmouseover="changeImages('_08', 'images/14.gif'); return true;"
onmouseout="changeImages('_08', 'images/08.gif'); return true;">
<img name="_08" src="images/08.gif" width=153 height=32 border=0 title="кнопка 2"></a></td>
<td width=153 height=32>
<a href="index3.html"
onmouseover="changeImages('_09', 'images/15.gif'); return true;"
onmouseout="changeImages('_09', 'images/09.gif'); return true;">
<img name="_09" src="images/09.gif" width=153 height=32 border=0 title="кнопка 3"></a></td>
<td width=153 height=32>
<a href="index4.html"
onmouseover="changeImages('_10', 'images/16.gif'); return true;"
onmouseout="changeImages('_10', 'images/10.gif'); return true;">
<img name="_10" src="images/10.gif" width=153 height=32 border=0 title="кнопка 4"></a></td>
<td width=136 height=32>
<img src="images/11.gif" width=136 height=32></td>
</tr>
<tr>
<td width=748 height=6 colspan=5>
<img src="images/12.gif" width=748 height=6></td>
</tr>
</table>
<br>
<table border=0 cellpadding=5 cellspacing=0 width=100%>
<tr>
<td>
<font face=sans-serif,arial,helvetica size=2 color=#000000>
<h1><? echo $zagolovok;?></h1>
<? echo $body; ?>
</font>
</td>
</tr>
</table>
</body>
</html>
Ответить с цитированием
  #2 (permalink)  
Старый 16.10.2015, 09:04
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,217

Сообщение от mikhail apalaev
не понятна эта строка:
document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
Ответ, как правило, в букваре...
http://javascript.ru/arguments
Ответить с цитированием
  #3 (permalink)  
Старый 16.10.2015, 09:06
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,217

Сообщение от mikhail apalaev
onmouseover="changeImages('_10', 'images/16.gif');
Внутри функции changeImages() твою непонятную строку интерпретируем в
document['_10'].src = 'images/16.gif';
Ответить с цитированием
  #4 (permalink)  
Старый 16.10.2015, 09:09
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,217

Сообщение от mikhail apalaev
for (var i=0; i<changeImages.arguments.length; i+=2) {/**/}
Для твоего примера явно избыточное применение...
Достаточно было и двух именных аргументов "Имя" и "Картинка".
Ответить с цитированием
  #5 (permalink)  
Старый 16.10.2015, 18:52
Интересующийся
Отправить личное сообщение для mikhail apalaev Посмотреть профиль Найти все сообщения от mikhail apalaev
 
Регистрация: 15.10.2015
Сообщений: 13

большое спасибо ksa!

есть еще вопросы

function newImage(arg) {
if (document.images) {
rslt = new Image(); (создание объекта-изобр.)
rslt.src = arg; (адрес объекта = аргументу функции newImage)
return rslt; (возврат объекта, возврат куда???)


onmouseover=document['_10'].src = 'images/16.gif'; (при наведении мыши вместо существующего вставляется новое-images/16.gif???)

for (var i=0; i<changeImages.arguments.length; i+=2) (changeImages.arguments.length=2? цикл повторяется 1 раз? эта строка для чего??? )
Ответить с цитированием
  #6 (permalink)  
Старый 16.10.2015, 19:17
Интересующийся
Отправить личное сообщение для mikhail apalaev Посмотреть профиль Найти все сообщения от mikhail apalaev
 
Регистрация: 15.10.2015
Сообщений: 13

function preloadImages() {
if (document.images) {
_13 = newImage("images/13.gif"); функция называет newImage с аргументом images/13.gif именем- _13??? зачем ее называть?
_14 = newImage("images/14.gif");
_15 = newImage("images/15.gif");
_16 = newImage("images/16.gif");
preloadFlag = true; функция preloadImages выполняет function newImage с разными аргументами??? после выполнения всех 4 function newImage дает preloadFlag значение true ???
Ответить с цитированием
  #7 (permalink)  
Старый 19.10.2015, 11:36
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,217

Сообщение от mikhail apalaev
возврат куда???
Туда, где вызывалась функция...

function test(){return 'Ok'};
// вот в alert и вернет
alert(test());
Ответить с цитированием
  #8 (permalink)  
Старый 19.10.2015, 11:38
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,217

Сообщение от mikhail apalaev
при наведении мыши вместо существующего вставляется новое-images/16.gif???
У элемента с именем _10 изменится свойство src...
Ответить с цитированием
  #9 (permalink)  
Старый 19.10.2015, 11:45
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,217

Сообщение от mikhail apalaev
(changeImages.arguments.length=2? цикл повторяется 1 раз? эта строка для чего??? )
Тут я не понял вопроса...
Ответить с цитированием
  #10 (permalink)  
Старый 19.10.2015, 11:47
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,217

Сообщение от mikhail apalaev
ает preloadFlag значение true ?
Дабы где-то знать, что "прелоад" выполнен...
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подскажите, что делает (как работает) данный скрипт. aratkevich Ваши сайты и скрипты 5 31.08.2015 22:20
ПОМОГИТЕ разобраться со скриптом (картинка праздничного дня) Zhuk13@ya.ru Общие вопросы Javascript 7 08.12.2013 19:51
Помогите найти скрипт галереи, как на... fulltext Общие вопросы Javascript 2 29.10.2012 15:01
Почему скрипт не работает с данными, которые вернул другой скрипт? Rooner jQuery 3 20.09.2012 14:56
Не работает скрипт :( VladimirV Javascript под браузер 5 21.12.2010 14:26