Модераторы: Sardar, Aliance

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> смена картинки функцией, по событию onmousemove(over) 
V
    Опции темы
Dobermann
Дата 5.9.2009, 16:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 992
Регистрация: 7.1.2008

Репутация: нет
Всего: 0



Код

<script type="text/javascript">
    var folder = 'scetchs/';
    var exe='.gif';
        function scetchClick()
        {
            var foto='';
            for(var i=2; i<=12; i++)
                {
                    foto=folder+i+exe;    
                }
                return foto        
        {
        
</script>
</head>
<body>
    <center>
     <img src="scetchs/1.gif" onmousemove="this.src=scetchClick()">
    </center>     
</body>
</html>

че то не работает... =\
...
а вот так работает, но только один раз(первая картинка меняется и все) =(
Код

<img src="scetchs/1.gif"
   onmousemove="this.src='scetchs/2.gif';" 
   onmousemove="this.src='scetchs/3.gif';" 
   onmousemove="this.src='scetchs/4.gif';" 
   onmousemove="this.src='scetchs/5.gif';" 
...
>


PM   Вверх
Amphiluke
Дата 5.9.2009, 16:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


   ☽
***


Профиль
Группа: Завсегдатай
Сообщений: 1253
Регистрация: 26.8.2009

Репутация: 39
Всего: 112



Не понял, зачем цикл...
Код

<script type="text/javascript">
    var folder = 'scetchs/';
    var exe='.gif';
    var i = 1;
        function scetchClick()
        {
               i = (i < 12) ? i+1 : 1;
               var foto=folder+i.toString()+exe;    
               return foto;        
        }
        
</script>
</head>
<body>
    <center>
     <img src="scetchs/1.gif" onmousemove="this.src=scetchClick()">
    </center>     
</body>
</html>


P.S. Вы уверены, что событие именно onmousemove, а не onmouseover, скажем?

Это сообщение отредактировал(а) Amphiluke - 5.9.2009, 17:00
PM   Вверх
Dobermann
Дата 5.9.2009, 17:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 992
Регистрация: 7.1.2008

Репутация: нет
Всего: 0



Цитата(Amphiluke @  5.9.2009,  17:56 Найти цитируемый пост)
P.S. Вы уверены, что событие именно onmousemove, а не onmouseover, скажем?

Я же в hgbcfybb так и написал
Цитата

по событию onmousemove(over)

а что за непонятное условие???
Код

 i = (i < 12) ? i+1 : 1;
...первый раз такое вижу... =\

Добавлено через 4 минуты и 58 секунд
при таком коде картинка просто пропадает после наведения указателя мыши, как будто их нету в папке...но они все там, может что то с путем??? по идее получающийся из этого foto=folder+i.toString()+exe; путь - правильный! 
PM   Вверх
Amphiluke
Дата 5.9.2009, 17:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


   ☽
***


Профиль
Группа: Завсегдатай
Сообщений: 1253
Регистрация: 26.8.2009

Репутация: 39
Всего: 112



Цитата(Dobermann @  5.9.2009,  17:49 Найти цитируемый пост)
а что за непонятное условие???

=)))))
Это тернарный оператор. Посмотрите любой учебник по C-подобному языку программирования.


Цитата(Dobermann @  5.9.2009,  17:49 Найти цитируемый пост)
hgbcfybb

Что это?? O_o
PM   Вверх
Dobermann
Дата 5.9.2009, 17:58 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 992
Регистрация: 7.1.2008

Репутация: нет
Всего: 0



да и так чето не работает 
Код

var foto=folder+i.toString()+exe;
var www = new string(foto);    
return www; 


Добавлено через 1 минуту и 22 секунды
Цитата(Amphiluke @  5.9.2009,  18:56 Найти цитируемый пост)
Что это?? O_o 

сорри(punto switcher) 
*в описании темы (под названием...)
PM   Вверх
Amphiluke
Дата 5.9.2009, 18:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


   ☽
***


Профиль
Группа: Завсегдатай
Сообщений: 1253
Регистрация: 26.8.2009

Репутация: 39
Всего: 112



Вот ссылка

Пардон, немного не успел. Сейчас посмотрю, в чем дело.

Добавлено через 6 минут и 19 секунд
Цитата(Dobermann @  5.9.2009,  17:58 Найти цитируемый пост)
да и так чето не работает 


Потому что конструктор String() пишется с заглавной буквы


Это сообщение отредактировал(а) Amphiluke - 5.9.2009, 18:02
PM   Вверх
Dobermann
Дата 5.9.2009, 18:50 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 992
Регистрация: 7.1.2008

Репутация: нет
Всего: 0



Цитата(Amphiluke @  5.9.2009,  19:01 Найти цитируемый пост)
Вот ссылка

с тернальным понятно...

Цитата(Amphiluke @  5.9.2009,  19:01 Найти цитируемый пост)
Потому что конструктор String() пишется с заглавной буквы

да и это не помогло =\

Добавлено через 10 минут и 11 секунд
может через switch?!
PM   Вверх
Amphiluke
Дата 5.9.2009, 19:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


   ☽
***


Профиль
Группа: Завсегдатай
Сообщений: 1253
Регистрация: 26.8.2009

Репутация: 39
Всего: 112



Попробуйте для эксперимента выкинуть всё лишнее и посмотреть, как будет работать разгруженный код
Код

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8" />
   <title>Template</title>
   <script type="text/javascript">
      var folder = "scetchs/";
      var exe=".gif";
      var i = 1;
      function scetchClick() {
         i = (i < 12) ? i+1 : 1;
         var foto=folder+i.toString()+exe;
         document.getElementById("path").firstChild.nodeValue=foto;
         return foto;
     }
</script>
</head>
<body>
    <center>
     <img src="scetchs/1.gif" onmouseover="this.src=scetchClick();" alt="" /><br />
     <span id="path">&nbsp;</span>
    </center>     
</body>
</html>


У меня это работает во всех браузерах.
P.S. Вы на домашнем компутере экспериментируете? Или документ на сервере? Не могла страничка в старом варианте сохраниться в кэше браузера?

Это сообщение отредактировал(а) Amphiluke - 5.9.2009, 19:10
PM   Вверх
Dobermann
Дата 5.9.2009, 20:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 992
Регистрация: 7.1.2008

Репутация: нет
Всего: 0



Вот так работает! Спасибо!
Цитата(Amphiluke @  5.9.2009,  20:09 Найти цитируемый пост)
P.S. Вы на домашнем компутере экспериментируете?

Да, на денвере...

Добавлено через 6 минут и 17 секунд
Странно, сейчас и так работает:
Код

   <script type="text/javascript">
      var folder = "scetchs/";
      var exe=".gif";
      var i = 1;
      function scetchClick() {
         i = (i < 12) ? i+1 : 1;
         var foto=folder+i.toString()+exe;
        // document.getElementById("path").firstChild.nodeValue=foto;
         return foto;
     }
</script>
</head>
<body>
    <center>
     <img src="scetchs/1.gif" onmouseover="this.src=scetchClick();" /><br />
    <!-- <span id="path">&nbsp;</span> -->
    </center>     
</body>
</html>


Добавлено через 8 минут и 8 секунд
Слушай, а если сделать через onmousemove, можно как нить сделать хотя бы секундную задержку???

Добавлено через 12 минут и 52 секунды
window.setInterval(scetchClick(), 500); - не работает...
PM   Вверх
Dobermann
Дата 5.9.2009, 20:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 992
Регистрация: 7.1.2008

Репутация: нет
Всего: 0



вот так не пашет =\
Код

   <script type="text/javascript">
      var folder = "scetchs/";
      var exe=".gif";
      var i = 1;
      
      function scetchClick() {      
         i = (i < 12) ? i+1 : 1;
         var foto=folder+i.toString()+exe;
         return foto;
     }


     setInterval( function scetchClick() , 1000)


</script>
</head>
<body>
    <center>
     <img src="scetchs/1.gif" onmousemove="this.src=scetchClick();" /><br />
    </center>     
</body>
</html>

PM   Вверх
Amphiluke
Дата 5.9.2009, 20:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


   ☽
***


Профиль
Группа: Завсегдатай
Сообщений: 1253
Регистрация: 26.8.2009

Репутация: 39
Всего: 112



Цитата(Dobermann @  5.9.2009,  20:21 Найти цитируемый пост)
вот так не пашет =\


Вот, исправьте, попробуйте:
Код

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8" />
   <title>Template</title>
   <script type="text/javascript">
      var folder = "scetchs/";
      var exe=".gif";
      var i = 1;
      var t = 0;
      function scetchClick() {
         if (t) window.clearTimeout(t);
         t = window.setTimeout(function() {
               i = (i < 12) ? i+1 : 1;
               document.getElementById("imag").src = folder+i.toString()+exe;
            }, 500);
     }
</script>
</head>
<body>
    <center>
     <img src="scetchs/1.gif" id="imag" onmouseover="scetchClick();" alt="" /><br />
    </center>     
</body>
</html>

PM   Вверх
diadiavova
Дата 5.9.2009, 20:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Цитата(Dobermann @  5.9.2009,  21:21 Найти цитируемый пост)
вот так не пашет

А так и не должно пахать. 
Код

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="content-type" content="text/html;charset=utf-8" />
    <title>Template</title>

    <script type="text/javascript">
        var folder = "scetchs/";
        var exe = ".gif";
        var images = new Array();
        for (var i = 0; i < 9; i++)
        {
            images[i] = new Image();
            images[i].src = folder + (i + 1).toString() + exe;
        }
        var index = 0;
        function scetchClick()
        {
            index = (index + 1) % images.length;
            document.getElementById("img").src = images[index].src;
            document.getElementById("path").innerHTML = images[index].src;
        }
     
    </script>

</head>
<body>
    <center>
     <img src="scetchs/1.gif" onmousemove="scetchClick();" alt="" id="img" /><br />
     <span id="path">&nbsp;</span>
    </center>

    <script type="text/javascript">
        setInterval("scetchClick();", 1000);
    </script>

</body>
</html>


Вое как-то так надо. Если ты, конечно это имел в виду. smile 


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
Dobermann
Дата 5.9.2009, 20:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 992
Регистрация: 7.1.2008

Репутация: нет
Всего: 0



неа, не работает...

Добавлено @ 20:46
Цитата(diadiavova @  5.9.2009,  21:38 Найти цитируемый пост)
Вое как-то так надо. Если ты, конечно это имел в виду.

смену картинок то мы сделали...сейчас интервал между сменой пытаемся сделать на событие onmousemove

Добавлено @ 20:47
diadiavova, в твоем коде интервал между сменой не работает =\

Это сообщение отредактировал(а) Dobermann - 5.9.2009, 20:49
PM   Вверх
diadiavova
Дата 5.9.2009, 20:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доктор Зло(диагност, настоящий, с лицензией и полномочиями)
****


Профиль
Группа: Модератор
Сообщений: 5821
Регистрация: 14.8.2008
Где: В Коньфпольте

Репутация: 8
Всего: 142



Вот специально во всех браузерах проверил.(Картинки надёргал с первого попавшегося сайта, другой формат)


Присоединённый файл ( Кол-во скачиваний: 3 )
Присоединённый файл  imgs.rar 50,11 Kb


--------------------
Хочешь получить мудрый совет - читай подписи участников форумов.
Злой доктор Щасзаболит smile
PM   Вверх
Amphiluke
Дата 5.9.2009, 20:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


   ☽
***


Профиль
Группа: Завсегдатай
Сообщений: 1253
Регистрация: 26.8.2009

Репутация: 39
Всего: 112



Цитата(Dobermann @  5.9.2009,  20:43 Найти цитируемый пост)
неа, не работает...


Dobermann, я сейчас свихнусь... Как же не работает? У меня всё работает!
PM   Вверх
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0584 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.