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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Анимированный тексти кнопка, конфликты/конфиги двух скриптов 
V
    Опции темы
8bit
Дата 26.9.2008, 22:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



HELP! Вобщем проблема такая....хочу на одну страницу впихать анимированный текст на JS и анимированную кнопку, тоже на JS...у меня возможно глупый вопрос, но просто сам такого никогда не делал...как на эту страницу оба скрипта разместить, причём у обоих в body прописаны параметры(и у текста и у кнопки)...то есть мне нужно и параметры кнопки и текста вместить в одно body...вот меня и заступорило...вот оба скрипта, чтобы яснее было...кину сразу с боди...
Скрипт 1:
Код

<script language="JavaScript" type="text/javascript">


function lib_bwcheck(){ //Browsercheck (needed)
    this.ver=navigator.appVersion
    this.agent=navigator.userAgent
    this.dom=document.getElementById?1:0
    this.opera5=this.agent.indexOf("Opera 5")>-1
    this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0; 
    this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
    this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
    this.ie=this.ie4||this.ie5||this.ie6
    this.mac=this.agent.indexOf("Mac")>-1
    this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0; 
    this.ns4=(document.layers && !this.dom)?1:0;
    this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5)
    return this
}
var bw=new lib_bwcheck()


numberOfLetters=11 

ypos=-100 

xpos=new Array()
xpos[0] = -320
xpos[1] = -265
xpos[2] = -215
xpos[3] = -160
xpos[4] = -105
xpos[5] = -25
xpos[6] = 5
xpos[7] = 100
xpos[8] = 150
xpos[9] = 190
xpos[10] = 270

animation=4

aspeed=10 


function makeObj(obj,speed,xmove,ymove,works){
    this.el=bw.dom? document.getElementById(obj):bw.ie4?document.all[obj]:bw.ns4?document.layers[obj]:0;    
      this.css=bw.dom || bw.ie4?this.el.style:bw.ns4?this.el:0;
    this.moveIt=b_moveIt;
}


var px = bw.ns4||window.opera?"":"px";

function b_moveIt(x,y){this.x=x; this.y=y; this.css.left=this.x+px; this.css.top=this.y+px;}

var posArray,oZdivs;
function introInit(){
    pageXcenter = bw.op5||bw.ns4 ||bw.ns6?innerWidth/2:document.body.offsetWidth/2
    pageYcenter = bw.op5||bw.ns4||bw.ns6?innerHeight/2:document.body.offsetHeight/2
    oZdivs = new Array()
    for(var i=0; i<numberOfLetters; i++){
        oZdivs[i] = new makeObj('div'+i)
        oZdivs[i].moveIt(-200,0)
        oZdivs[i].css.visibility = "visible"
    }
    if (animation==4) animation = Math.round(Math.random()*2)+1
    if (!testing) eval('anim'+animation+'(0)')
    else testIt()
}
function testIt(){
    alert(pageYcenter)
    for(var i=0; i<oZdivs.length; i++){
        oZdivs[i].moveIt((pageXcenter+xpos[i]),(pageYcenter+ypos))
    }    
}


xPath3 = new Array(0,-2,-6,-13,-23,-36,-50,-66,-83,-100,-117,-134,-150,-164,-177,-187,-194,-198,-200,-198,-194,-187,-177,-164,-150,-134,-117,-100,-83,-66,-50,-36,-23,-13,-6,-2,0)
yPath3 = new Array(0,-17,-34,-50,-64,-77,-87,-94,-98,-100,-98,-94,-87,-77,-64,-50,-34,-17,0,17,34,50,64,77,87,94,98,100,98,94,87,77,64,50,34,17,0)
function anim3(num){
    if (num<oZdivs.length){
        animX(num,'xPath3','yPath3',aspeed,0,'anim3('+(num+1)+')')
    }else endanim(0)
}

function animX(divnum,arrayX,arrayY,speed,num,fn){
    arrayXr = new Array(); arrayYr = new Array()
    arrayXr = eval(arrayX); arrayYr = eval(arrayY)
    arrayX = "'"+arrayX+"'"; arrayY = "'"+arrayY+"'"
    if (num<arrayXr.length){
        oZdivs[divnum].moveIt(arrayXr[num]+(pageXcenter+xpos[divnum]),arrayYr[num]+(pageYcenter+ypos))
        num ++;
        setTimeout("animX("+divnum+","+arrayX+","+arrayY+","+speed+","+num+",'"+fn+"')",speed)
    }else eval(fn)
}

function endanim(num){
    if (num<oZdivs.length){
        oZdivs[num].css.visibility = "hidden" //Hiding divs
        num ++
        setTimeout("endanim("+num+")",300)
    }else{
        //location.href="main2.html" //Going to another page
    }
}


onload = introInit;
</script>







</head>





<body bgcolor="#737994" text="#FFFFFF" link="#FFFFFF" topmargin="0" leftmargin="0">





<div id="div0" class="clDivs">d</div>
<div id="div1" class="clDivs">y</div>
<div id="div2" class="clDivs">n</div>
<div id="div3" class="clDivs">a</div>
<div id="div4" class="clDivs">m</div>
<div id="div5" class="clDivs">i</div>
<div id="div6" class="clDivs">c</div>
<div id="div7" class="clDivs">h</div>
<div id="div8" class="clDivs">t</div>
<div id="div9" class="clDivs">m</div>
<div id="div10" class="clDivs">l</div>


<center>bla bla bla</center>
</body>

Скрипт 2:
Код

<script language="JavaScript">

   var i = 0; 
   var TextNumber = 0;
   var TextInput = new Object();
   var HelpText="";                              
   var Text = "";  
   var Speed=300
   var WaitSpace="  "                 
TextInput[0] = "eiiiea";
TextInput[1] = "Eioa?aniay";
TotalTextInput =1;
for (var addWait = 0; addWait <= TotalTextInput; addWait++) 
   { TextInput[addWait]+=WaitSpace; }
var TimerId
var TimerSet=false;
function startBanner (form)  
   {
   if (!TimerSet)
      {
      TimerSet=true;
      banner();
      }
   }
function banner() 
   {
   Text=rollMessage();
   TimerId = setTimeout("banner()", Speed);
   document.form2.banner.value=Text;
   }
function rollMessage () 
   {
   Wait_yn=false;
   i++;
   var CheckSpace = HelpText.substring(i-1, i);
   CheckSpace = "" + CheckSpace;
   if (CheckSpace == " ") 
      {i++;}
   if (i >= HelpText.length+1) 
      {
      i=0; 
      if (TextNumber < TotalTextInput) 
         {TextNumber++;} 
      else 
         {TextNumber = 0;} 
      initBanner();
      }
   Text = HelpText.substring(0, i);
   return (Text);
   }
function initBanner() 
   {
   Text = TextInput[TextNumber];
   HelpText = Text;
startBanner ();
   }
function stopBanner() 
   {
   TimerSet=false; 
   clearTimeout (TimerId);
   }
function resetBanner()
   {
   TimerSet=false; 
   clearTimeout (TimerId);
   TextNumber=0;
   i=0;
   Speed=300;
   document.form2.banner.value=" ";
   initBanner();   
   }
</script>

<form name="form2" onSubmit="null">
  <div align="center"><center><p><input name="banner"
  onclick="alert('bla\'action=[url]\' bla!!!')"
  type="submit" value="Кнопка" style="font-size: 8pt"> </p>
  </center></div>
</form>

Помогите плз...очень надо...если можно то пришлите сразу в готовом варианте и с объяснением...заранее спасибо!..
PM MAIL   Вверх
smartov
Дата 27.9.2008, 11:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


свой собственный
****


Профиль
Группа: Экс. модератор
Сообщений: 4225
Регистрация: 2.2.2006
Где: NJ

Репутация: 7
Всего: 259



Просто взять и запихать все скопом в одно body.
PM MAIL   Вверх
8bit
Дата 27.9.2008, 12:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



если было бы всё так просто я бы не создавал тему, тем более не правильно озаглавленную))))....я 20 раз пробовал по разному, но ничего не получилось...у каждого скрипта просто свои параметры в body...
PM MAIL   Вверх
Sardar
Дата 27.9.2008, 13:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



В простейшем случае:

Код

<marquee>Бегущий текст</marquee>
<button><marquee>Бегущий текст</marquee></button>


Работать будет не во всех браузерах (современные ИЕ, Мозилла/Лиса, Опера поддерживают).

По теме, оберни оба скрипта в (function() { /* твой скрипт тут */})(); - по идее конфликтов имён не будет (в коде не разбирался).


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
smartov
Дата 27.9.2008, 16:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


свой собственный
****


Профиль
Группа: Экс. модератор
Сообщений: 4225
Регистрация: 2.2.2006
Где: NJ

Репутация: 7
Всего: 259



Цитата(8bit @  27.9.2008,  12:50 Найти цитируемый пост)
параметры в body

Вот ты знаешь, сколько я программирую на JavaScript но видимо мало. Т.к. я вот не в курсе что такое "параметры в body"
PM MAIL   Вверх
Ockonal
Дата 27.9.2008, 16:48 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Smile
*


Профиль
Группа: Участник
Сообщений: 219
Регистрация: 9.7.2007
Где: Ukraine::Nikolaev ;

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



smartov
Код

<body bgcolor="" ... align=""..>
</body>


--------------------
Ум заключается не только в знании, но и в умении прилагать знание на деле.Самое лучшее из всех доказательств есть опыт.Каждому человеку свойственно ошибаться, но никому, кроме глупца, несвойственно упорствовать в ошибке.
PM MAIL WWW ICQ Skype GTalk Jabber MSN   Вверх
smartov
Дата 27.9.2008, 21:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


свой собственный
****


Профиль
Группа: Экс. модератор
Сообщений: 4225
Регистрация: 2.2.2006
Где: NJ

Репутация: 7
Всего: 259



Ockonal, во втором скрипте никакого body нет
PM MAIL   Вверх
8bit
Дата 29.9.2008, 18:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Sardar, мне не нужна бегущая строка, мне нужна анимация, как раз такая, как там и прописана, а тэг бегущий строки я и сам знаю...

smartov, я сам так назвал...во втором скрипте я имел в виду вот это:
Код

<form name="form2" onSubmit="null">
  <div align="center"><center><p><input name="banner"
  onclick="alert('bla\'action=[url]\' bla!!!')"
  type="submit" value="Кнопка" style="font-size: 8pt"> </p>
  </center></div>
</form>

но это же не важно...помогите лучше понять как это сделать...всё равно же нету ничего невозможного...=)
PM MAIL   Вверх
smartov
Дата 29.9.2008, 18:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


свой собственный
****


Профиль
Группа: Экс. модератор
Сообщений: 4225
Регистрация: 2.2.2006
Где: NJ

Репутация: 7
Всего: 259



Цитата(8bit @  29.9.2008,  18:09 Найти цитируемый пост)
но это же не важно...

Это ОЧЕНЬ важно.
Для того чтобы получить ответ, надо знать половину вопроса.
Пока что ты не можешь даже сформулировать вопрос четко и ясно.
Как показывает практика, когда человек сформулирует вопрос нормально, словами, то они по семантическим цепочкам уже начинают его выводить к ответу.
А когда типа "ну вы меня понимаете" то человеку и вопрос лень составить - смысл ему помогать?


Цитата(8bit @  29.9.2008,  18:09 Найти цитируемый пост)
.во втором скрипте я имел в виду вот это:

Что мешает и эту форму запихнуть в один body с первым скриптом?
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




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


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

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