Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.06.29;
Скачать: CL | DM;

Вниз

Кажется, один из немногих форумов, где и по выходным есть...   Найти похожие ветки 

 
VictorT ©   (2005-05-28 23:56) [0]

некоторое оживление. Потому задам тут вопрос про Слайд-шоу на JavaScript.
Не пойму, что не нравится 7-му Нетскепу.
Вот код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<style type=text/css>
#slides {
filter: blendTrans(duration=3.0);
}
</style>
<script language="JavaScript" type="text/javascript" src="slides.js">
var isIE;
if ((navigator.appName == "Microsoft Internet Explorer") && !((navigator.userAgent.toLowerCase().in­dexOf("opera")>-1) && (window.opera)))
  isIE = "IE";
else
  isIE = "no IE";
var img_array = new Array(3);
for (n=0;n<=2;n++) {
  img_array[n] = new Image();
  next=n+1;
  img_array[n].src = "images/slides/"+next+".jpg";
}
var i = 1;
function doFilter() {
  if (isIE == "IE")
      slides.filters[0].Apply();
  slides.src = img_array[i].src;
  if (isIE == "IE")
      slides.filters[0].Play();
  i = i + 1;
  if (i == 3) i = 0;
}
setInterval("doFilter()", 4000)
</script>
</head>
<body>
<img src="images/slides/1.jpg" width=129 height=192 name="slides" class="slides" id="slides">
</body>
</html>

Посмотреть в действии можно тут: http://rimit.com.ua/ (фотки в левом верхнем углу).
В ИЕ и Опере работает, а в Нетсткейпе не работатет.
Или это у меня Нетскейп коцанный, а на самом деле работает?


 
Eraser ©   (2005-05-29 00:04) [1]

Кажется, один из немногих форумов, где и по выходным есть...

Только вот это форум по Делфи ))


 
VictorT ©   (2005-05-29 00:08) [2]


> Только вот это форум по Делфи ))

Только вот надеюсь, потрепаться про JavaScript можно? :)


 
Eraser ©   (2005-05-29 00:11) [3]

VictorT ©   (29.05.05 00:08) [2]
Только вот надеюсь, потрепаться про JavaScript можно? :)


И не только про JavaScript ;-)


 
VictorT ©   (2005-05-29 00:13) [4]

Понятно, сейчас мы в этой ветке будем наверно трепаться про то, о чём можно потрепаться в "потрепаться"...


 
Eraser ©   (2005-05-29 00:20) [5]

VictorT ©   (29.05.05 00:13) [4]

Я примерно а это и намекал ), хотя ХЗ, мож. найдётся щас какой-нибудь любитель нэтскейпа и явы!


 
Плохиш ©   (2005-05-29 00:21) [6]

Nikitian ©   (28.05.05 23:52) [15]

Ты не обращай внимание. Нетскейпу и Ко. ещё много чего не нравится ;-)


 
Cobalt ©   (2005-05-29 00:23) [7]

2 VictorT ©
А Мозилла - показывает?


 
Гарри Поттер ©   (2005-05-29 00:26) [8]

Напиши на паге: нетскейпы идут мимо, остальные пруцца.


 
Eraser ©   (2005-05-29 00:30) [9]

VictorT ©   (28.05.05 23:56)

В мозилле тоже значит работать не будет.


 
VictorT ©   (2005-05-29 00:54) [10]


> Нетскейпу и Ко. ещё много чего не нравится ;-)

Дело в том, что есть аналогичный код (хотя и по ламерски написанный), который почему-то в Нетскейпе работает. Не могу понять, почему мой, аналогичный, но чуть соптимизированный (без китайской технологии копи-пасте, а так принципиально ничем не отличается) не работает, а тот работает.
Вот собственно, работающий код:
<SCRIPT language="JavaScript">
<!--

/* define image width and height */

var pic_width=340;
var pic_height=265;

/* define image urls */

if (document.images)
{
var pics= new Array(5)
    pics[1]= new Image(pic_width,pic_height);
    pics[1].src="bud5.jpg";  
    pics[2]= new Image(pic_width,pic_height);
    pics[2].src="bud2.jpg";
    pics[3]= new Image(pic_width,pic_height);
    pics[3].src="bud6.jpg";  
    pics[4]= new Image(pic_width,pic_height);
    pics[4].src="bud3.jpg";  
    pics[5]= new Image(pic_width,pic_height);
    pics[5].src="bud7.jpg";
}    

/* define text for image captions  */

var destext= new Array(5)
   destext[0]="¦руры№эшщ юуы ф тшёЄртъш";
   destext[1]="¦руры№эшщ юуы ф тшёЄртъш";
   destext[2]="¦руры№эшщ юуы ф тшёЄртъш"
   destext[3]="¦руры№эшщ юуы ф тшёЄртъш";
   destext[4]="¦руры№эшщ юуы ф тшёЄртъш";


var numpics=5;
var thenum=0;
imgName="img1";

function change_it()
{
  if (document.images)
   {
     document.write("<center><IMG SRC=""+pics[thenum]+"" border="0" width=""+pic_width+"" height=""+pic_height+"" name="img1">\n");
     document.write("<FORM name="form1"><TEXTAREA name="text1" wrap="virtual" rows="5" cols="20">"+destext[thenum]+"</TEXTAREA></FORM></center>");
     setTimeout("change_it2()",2000);  
  }
}

function change_it2()
{
        var x=0;
        thenum+=1;

          if (thenum>numpics-1)
            thenum=0;

          document[imgName].src=pics[thenum].src;
          document.form1.text1.value=destext[thenum];
          x+=1;
          setTimeout("change_it2()",2000);
         
}

//-->
</SCRIPT>

</HEAD>

<BODY BGCOLOR="#FFFFFF">

<SCRIPT language="JavaScript">
<!--
change_it()
//-->
</SCRIPT>


> А Мозилла - показывает?

Мозилла у меня счас не стоит, не могу проверить. Вот, на днях обещали закатать все броузеры, которые только будет возможность.
А ни у кого нет мозиллы, чтоб сказать, работает, или нет?


 
VictorT ©   (2005-05-29 00:56) [11]

блин, в досовской кодировке скопировал, но в общем-то не важно :)


 
Копир ©   (2005-05-29 00:56) [12]

Вот пример, когда в NN точно работает:


<html>
<head>
<title> </title>
<script language="javascript">
<!--
swapping = "no"
// -->
</script>
<script language="javascript1.1">
<!--
swapping = "yes"
// -->
</script>
<script language="javascript">

if (swapping == "yes") {
pict1 = new Image()
pict1.src = "010001.jpg"
pict2 = new Image()
pict2.src = "010002.jpg"
pict3 = new Image()
pict3.src = "010003.jpg"

}

slides = 3
rotations = 1
speed = 3000

function runit() {
if (swapping == "yes") {
for (x=1, y=0 ; x < (slides*rotations); x=x+slides, y=0) {
setTimeout("document.slideshow.src = pict2.src",((x + y) * speed))
y++; setTimeout("document.slideshow.src = pict3.src",((x + y) * speed))

y++; setTimeout("document.slideshow.src = pict1.src",((x + y) * speed))
}
}
}
// -->
</script>
</head>
<body bgcolor=#000000 link=#FFFFFF alink=#FF0000 vlink=#FFFF00 onload=runit()>
<center>
<P>
<img name="slideshow" height=240  width=320 src="010001.jpg" border=0>
<P>
<a href="index2.html">NEXT</a>
</center>
</body>
</html>


 
wnew ©   (2005-05-29 01:00) [13]

VictorT ©   (28.05.05 23:56)
Так проверка же стоит в коде, если IE или Opera - выполнять, иначе - ничего не делать. Кроме того "Шкаф" на самом деле не понимает фильтры динамического HTML.


 
Копир ©   (2005-05-29 01:00) [14]

Угораздило меня u поставить:))


 
wnew ©   (2005-05-29 01:07) [15]

VictorT ©   (29.05.05 0:54) [10]

> Дело в том, что есть аналогичный код (хотя и по
> ламерски написанный), который почему-то в Нетскейпе
> работает. Не могу понять, почему мой, аналогичный, но
> чуть соптимизированный

Как раз потому, что ты проверяешь на тип браузера и, если Шкаф - то не выполнять. И в коде с которого ты, якобы, пример взял(хотя ничего похожего):) фильтры не применяются, которые служат препятствием для Сетевого Шкафа.


 
VictorT ©   (2005-05-29 01:16) [16]


> Копир ©  

Проверил, действительно работает. Не пойму, у меня ж аналогично src-у присваивается нужный рисунок... почему не работает, неясно...


> Так проверка же стоит в коде, если IE или Opera -
> выполнять, иначе - ничего не делать. Кроме того "Шкаф"
> на самом деле не понимает фильтры динамического HTML.

Ты не совсем понял. Там проверка стоит - если ИЕ - применять фильтры, и соответсвенно делать плавную анимацию (переплывание одного изображения в другое), если не ИЕ, то не применять фильтры, просто менять фотки.

> Как раз потому, что ты проверяешь на тип браузера и,
> если Шкаф - то не выполнять. И в коде с которого ты,
> якобы, пример взял(хотя ничего похожего):) фильтры не
> применяются, которые служат препятствием для Сетевого
> Шкафа.

Опять же, повторюсь, там проверка, если не ИЕ, то не использовать фильтры, а остальное выполнять. А пример я действительно брал не с приведённого кода, просто, когда увидел, что мой не работает, вспомнил, что у меня валялся работающий, сравниваю, и не могу найти, что ж в моём коде не так.


 
KilkennyCat ©   (2005-05-29 01:17) [17]

вся беда в "document". Неоднократно сталкивался.


 
wnew ©   (2005-05-29 01:46) [18]


>for (n=0;n<=2;n++) {
>  img_array[n] = new Image();
>  next=n+1;
>   img_array[n].src = "images/slides/"+next+".jpg";


попробуй var next = n+1 или
"images/slides/"+(n+1)+".jpg";

Может IE проигнорировал неточночсть в объявлении переменной, а NS капризнее?


 
wnew ©   (2005-05-29 01:56) [19]

И ещё здесь: for (var n=0;n<=2;n++)


 
VictorT ©   (2005-05-30 00:19) [20]


> "document".

Его уже вписывал, не помогло.

> wnew ©

Попробую, когда попаду на работу.


 
VictorT ©   (2005-05-30 21:01) [21]


> wnew ©

Огромадное спасибо, помогло.



Страницы: 1 вся ветка

Текущий архив: 2005.06.29;
Скачать: CL | DM;

Наверх




Память: 0.53 MB
Время: 0.043 c
1-1117703726
Phoenix9000
2005-06-02 13:15
2005.06.29
запуск процедуры в определенное время


3-1116318431
atruhin
2005-05-17 12:27
2005.06.29
Как подсчитать кол-во уникальных значений поля с учетом NULL


3-1116153034
Stef
2005-05-15 14:30
2005.06.29
Поиск подслова в слове


1-1117885913
heady
2005-06-04 15:51
2005.06.29
программа, вечно висящая в трее


1-1117877764
Anatoly Podgoretsky
2005-06-04 13:36
2005.06.29
Занимательные наблюдения над плавающей запятой