Три JavaScript не хотят работать вместе

Форум для программистов

Сообщение Piloan » Вс апр 04, 2004 11:26 am

У меня такая проблема, на сайте три JavaScript: приветствие, титры и надпись в строке состояния,так вот скрипт титры и скрипт строки состояния ни как не хотят работать вместе. Ставишь их вместе, скрипт строки состояния не работает, убираешь скрипт титры, скрипт строки работает.
Кто понимает помогите разобраться, почему скрипт титры и скрипт строки не могут работать вместе, а по отдельности работают

На сайте три JavaScript:
1. Приветствие в файле *.js
var h=(new Date()).getHours();
if (h > 6 && h < 10) document.writeln("Доброе утро!");
if (h > 10 && h < 16) document.writeln("Добрый день!");
if (h > 16 && h < 23) document. writeln("Вечер добрый!");
if (h > 23 || h < 6 ) document.writeln("Доброй ночи!" ) ;
2. Титры, в body вставлен onload=startBanner()
<script language="JavaScript1.2">
var marqueewidth=200;
var marqueeheight=150;
var speed=2;
var marqueecontents='<font face="Arial"><strong>Наша фирма предлагает следующую продукцию:<br><a href="http://xxxxxxxx.ru">трубы полиэтиленовые</a><br><a href="link.htm">сварочное оборудование</a> и так далее и тому подобное</strong></font>';

if (document.all)
document.write('<marquee direction="up" scrollAmount='+speed+' style="width:'+marqueewidth+';height:'+marqueeheight+'">'+marqueecontents+'</marquee>');

function regenerate(){
window.location.reload();
}
function regenerate2(){
if (document.layers){
setTimeout("window.onresize=regenerate",450);
intializemarquee();
}
}

function intializemarquee(){
document.cmarquee01.document.cmarquee02.document.write(marqueecontents);
document.cmarquee01.document.cmarquee02.document.close();
thelength=document.cmarquee01.document.cmarquee02.document.height;
scrollit();
}

function scrollit(){
if (document.cmarquee01.document.cmarquee02.top>=thelength*(-1)){
document.cmarquee01.document.cmarquee02.top-=speed;
setTimeout("scrollit()",100);
}
else{
document.cmarquee01.document.cmarquee02.top=marqueeheight;
scrollit();
}
}

window.onload=regenerate2;
</script>
3. Надпись в строке состояния заключенный в файл * .js
<!--
var speed = 100

var pause = 1000

var timerID = null
var bannerRunning = false

var ar = new Array()

ar[0] = 'Добро пожаловать на официальный сайт ООО "МИР" !'
ar[1] = "Мы предлагаем:"
ar[2] = "1. Трубы напорные из полиэтилена ГОСТ 18599-2001"
ar[3] = "2. Трубы из полиэтилена для газопроводов ГОСТ Р 50838-95"
ar[4] = "3. Трубы полиэтиленовые неответственного назначения"
ar[5] = "4. Трубы и соединительные детали из ПВХ и ПНД для канализации"
ar[6] = "5. Соединительные детали из полиэтилена сварные"
ar[7] = "6. Соединительные детали из полиэтилена литые"
ar[8] = "7. Сварочное оборудование для сварки полиэтиленовых труб"
ar[9] = "Осуществляем доставку и монтаж водопроводных и канализационных п/э труб"

var currentMessage = 0

var offset = 0

function stopBanner() {

if (bannerRunning)

clearTimeout(timerID)

bannerRunning = false
}

function startBanner() {

stopBanner()

showBanner()
}

function showBanner() {

var text = ar[currentMessage]

if (offset < text.length) {

if (text.charAt(offset) == " ")

offset++

var partialMessage = text.substring(0, offset + 1)

window.status = partialMessage


offset++

timerID = setTimeout("showBanner()", speed)

bannerRunning = true
} else {

offset = 0

currentMessage++

if (currentMessage == ar.length)

currentMessage = 0

timerID = setTimeout("showBanner()", pause)

bannerRunning = true
}
}

// -->
Piloan
Капитан
 
Сообщений: 187
Зарегистрирован: Сб янв 04, 2003 7:16 am
Откуда: Казань
Пункты репутации: 0

Сообщение eduha » Вс апр 04, 2004 3:54 pm

2Piloan
Скорее всего, не пашет из-за того, что используется одно и тоже имя переменной (speed) Попробуй поменять её в одном скрипте, мож поможет. А лучше оставь в покое строку состояния, её не для этого делали Изображение
Бегущая строка в статусбаре только раздражает...
<span style='color:blue'>Мэджик пипл, вуду пипл</span>
eduha
Капитан
 
Сообщений: 233
Зарегистрирован: Пн авг 11, 2003 4:39 pm
Откуда: Караганда / Казахстан
Пункты репутации: 0

Сообщение Piloan » Пн апр 05, 2004 5:11 am

Я бы оставил строку состояния в покое , но заказчик просит.
Piloan
Капитан
 
Сообщений: 187
Зарегистрирован: Сб янв 04, 2003 7:16 am
Откуда: Казань
Пункты репутации: 0

Сообщение Piloan » Пн апр 05, 2004 5:45 am

<!--QuoteBegin--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>Цитата </td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->Скорее всего, не пашет из-за того, что используется одно и тоже имя переменной (speed)<!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->
Параметр speed и там и там присутствует правильно
В одном стоит var speed = 200, в другом var speed=1, я
же не могу само название speed поменять
Piloan
Капитан
 
Сообщений: 187
Зарегистрирован: Сб янв 04, 2003 7:16 am
Откуда: Казань
Пункты репутации: 0

Сообщение eduha » Пн апр 05, 2004 7:47 am

Да, действительно, названия переменных не при чём.

Удали из второго скрипта строчку window.onload=regenerate2;
А для body пропиши onload=startBanner();regenerate2();
<span style='color:blue'>Мэджик пипл, вуду пипл</span>
eduha
Капитан
 
Сообщений: 233
Зарегистрирован: Пн авг 11, 2003 4:39 pm
Откуда: Караганда / Казахстан
Пункты репутации: 0

Сообщение Миша Спларов » Пн апр 05, 2004 11:48 am

2Piloan
<!--QuoteBegin--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>Цитата </td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->Удали из второго скрипта строчку window.onload=regenerate2;
А для body пропиши onload=startBanner();regenerate2(); <!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->
Ошибка, как правильно заметил eduha, скорее всего в этом...
«Проектирование интерфейсов — увлекательный дизайнерский процесс. Схожее удовольствие можно получить от сложной верстки, от создания многомерных схем и решения других задач на логику и эстетику». (q) A. Лебедев
Миша Спларов
Генерал-лейтенант
 
Сообщений: 3022
Зарегистрирован: Пн апр 22, 2002 7:58 am
Откуда: Россия, Томск
Пункты репутации: 0

Сообщение Piloan » Вт апр 13, 2004 9:43 am

Я зделал попроще: убрал этот скрипт и поставил MARQUEE
Всем спасибо за помощь
Piloan
Капитан
 
Сообщений: 187
Зарегистрирован: Сб янв 04, 2003 7:16 am
Откуда: Казань
Пункты репутации: 0

Сообщение Миша Спларов » Ср апр 14, 2004 5:42 pm

2Piloan
и зря. marquee только для ие....
«Проектирование интерфейсов — увлекательный дизайнерский процесс. Схожее удовольствие можно получить от сложной верстки, от создания многомерных схем и решения других задач на логику и эстетику». (q) A. Лебедев
Миша Спларов
Генерал-лейтенант
 
Сообщений: 3022
Зарегистрирован: Пн апр 22, 2002 7:58 am
Откуда: Россия, Томск
Пункты репутации: 0

Сообщение Bio Wolf » Чт апр 15, 2004 6:23 am

2Миша Спларов
Почему - Opera вроде бы тоже его показывает???
Спам придумали боги в отместку за наши молитвы.
Bio Wolf
Майор
 
Сообщений: 397
Зарегистрирован: Пн апр 08, 2002 9:23 pm
Откуда: KG
Пункты репутации: 0

Сообщение Миша Спларов » Пт апр 16, 2004 4:14 pm

2Bio Wolf
раз в спецификации нет - значит отстой ;-))))
«Проектирование интерфейсов — увлекательный дизайнерский процесс. Схожее удовольствие можно получить от сложной верстки, от создания многомерных схем и решения других задач на логику и эстетику». (q) A. Лебедев
Миша Спларов
Генерал-лейтенант
 
Сообщений: 3022
Зарегистрирован: Пн апр 22, 2002 7:58 am
Откуда: Россия, Томск
Пункты репутации: 0

Сообщение sir_graf » Пт апр 16, 2004 5:11 pm

2Bio Wolf
не, Opera не показывает!
<span style='font-family:Times'><span style='font-size:8pt;line-height:100%'><span style='color:green'>Let the force be with you</span></span></span>
sir_graf
Подполковник
 
Сообщений: 656
Зарегистрирован: Чт июн 27, 2002 9:58 pm
Откуда: Беларусь, Минск
Пункты репутации: 0

Сообщение Piloan » Пн апр 19, 2004 10:28 am

<!--QuoteBegin--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>Цитата </td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->не, Opera не показывает! <!--QuoteEnd--></td></tr></table><div class='postcolor'><!--QuoteEEnd-->
На нет и суда нет
Piloan
Капитан
 
Сообщений: 187
Зарегистрирован: Сб янв 04, 2003 7:16 am
Откуда: Казань
Пункты репутации: 0


Вернуться в Программирование

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1