Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente bannato
    Registrato dal
    Feb 2005
    Messaggi
    171

    uno script blocca l'altro

    ho inserito due script all'interno del body di una pagina.
    IL primo da solo funziona, il secondo da solo funziona. Tutti e due assieme : il primo no funziona il secondo si.

    Questo è il primo :

    codice:
          <script language="JavaScript1.2">
    
    //configure the below five variables to change the style of the scroller
    var scrollerwidth='350px'
    var scrollerheight='200px'
    var scrollerbgcolor='lightyellow'
    //set below to '' if you don't wish to use a background image
    var scrollerbackground='scrollerback.gif'
    
    //configure the below variable to change the contents of the scroller
    var messages=new Array()
    messages[0]="<font face='Arial'>qui vanno le news
    o la data</font>"
    messages[1]="<font face='Arial'>qui vanno le news</font>"
    messages[2]="<font face='Arial'>qui vanno le news</font>"
    
    ///////Do not edit pass this line///////////////////////
    
    var ie=document.all
    var dom=document.getElementById
    
    if (messages.length>2)
    i=2
    else
    i=0
    
    function move1(whichlayer){
    tlayer=eval(whichlayer)
    if (tlayer.top>0&&tlayer.top<=5){
    tlayer.top=0
    setTimeout("move1(tlayer)",3000)
    setTimeout("move2(document.main.document.second)",3000)
    return
    }
    if (tlayer.top>=tlayer.document.height*-1){
    tlayer.top-=5
    setTimeout("move1(tlayer)",50)
    }
    else{
    tlayer.top=parseInt(scrollerheight)
    tlayer.document.write(messages[i])
    tlayer.document.close()
    if (i==messages.length-1)
    i=0
    else
    i++
    }
    }
    
    function move2(whichlayer){
    tlayer2=eval(whichlayer)
    if (tlayer2.top>0&&tlayer2.top<=5){
    tlayer2.top=0
    setTimeout("move2(tlayer2)",3000)
    setTimeout("move1(document.main.document.first)",3000)
    return
    }
    if (tlayer2.top>=tlayer2.document.height*-1){
    tlayer2.top-=5
    setTimeout("move2(tlayer2)",50)
    }
    else{
    tlayer2.top=parseInt(scrollerheight)
    tlayer2.document.write(messages[i])
    tlayer2.document.close()
    if (i==messages.length-1)
    i=0
    else
    i++
    }
    }
    
    function move3(whichdiv){
    tdiv=eval(whichdiv)
    if (parseInt(tdiv.style.top)>0&&parseInt(tdiv.style.top)<=5){
    tdiv.style.top=0+"px"
    setTimeout("move3(tdiv)",3000)
    setTimeout("move4(second2_obj)",3000)
    return
    }
    if (parseInt(tdiv.style.top)>=tdiv.offsetHeight*-1){
    tdiv.style.top=parseInt(tdiv.style.top)-5+"px"
    setTimeout("move3(tdiv)",50)
    }
    else{
    tdiv.style.top=parseInt(scrollerheight)
    tdiv.innerHTML=messages[i]
    if (i==messages.length-1)
    i=0
    else
    i++
    }
    }
    
    function move4(whichdiv){
    tdiv2=eval(whichdiv)
    if (parseInt(tdiv2.style.top)>0&&parseInt(tdiv2.style.top)<=5){
    tdiv2.style.top=0+"px"
    setTimeout("move4(tdiv2)",3000)
    setTimeout("move3(first2_obj)",3000)
    return
    }
    if (parseInt(tdiv2.style.top)>=tdiv2.offsetHeight*-1){
    tdiv2.style.top=parseInt(tdiv2.style.top)-5+"px"
    setTimeout("move4(second2_obj)",50)
    }
    else{
    tdiv2.style.top=parseInt(scrollerheight)
    tdiv2.innerHTML=messages[i]
    if (i==messages.length-1)
    i=0
    else
    i++
    }
    }
    
    function startscroll(){
    if (ie||dom){
    first2_obj=ie? first2 : document.getElementById("first2")
    second2_obj=ie? second2 : document.getElementById("second2")
    move3(first2_obj)
    second2_obj.style.top=scrollerheight
    second2_obj.style.visibility='visible'
    }
    else if (document.layers){
    document.main.visibility='show'
    move1(document.main.document.first)
    document.main.document.second.top=parseInt(scrollerheight)+5
    document.main.document.second.visibility='show'
    }
    }
    
    window.onload=startscroll
    
    </script>
          <ilayer id="main" width=&{scrollerwidth}; height=&{scrollerheight}; bgColor=&{scrollerbgcolor}; background=&{scrollerbackground}; visibility=hide> 
          <layer id="first" left=0 top=1 width=&{scrollerwidth};> 
          <script language="JavaScript1.2">
    if (document.layers)
    document.write(messages[0])
    </script>
          </layer>
          <layer id="second" left=0 top=0 width=&{scrollerwidth}; visibility=hide> 
          <script language="JavaScript1.2">
    if (document.layers)
    document.write(messages[dyndetermine=(messages.length==1)? 0 : 1])
    </script>
          </layer>
          </ilayer>
          <script language="JavaScript1.2">
    if (ie||dom){
    document.writeln('<div id="main2" style="position:relative;width:'+scrollerwidth+';height:'+scrollerheight+';overflow:hidden;background-color:'+scrollerbgcolor+' ;background-image:url('+scrollerbackground+')">')
    document.writeln('<div style="position:absolute;width:'+scrollerwidth+';height:'+scrollerheight+';clip:rect(0 '+scrollerwidth+' '+scrollerheight+' 0);left:0px;top:0px">')
    document.writeln('<div id="first2" style="position:absolute;width:'+scrollerwidth+';left:0px;top:1px;">')
    document.write(messages[0])
    document.writeln('</div>')
    document.writeln('<div id="second2" style="position:absolute;width:'+scrollerwidth+';left:0px;top:0px;visibility:hidden">')
    document.write(messages[dyndetermine=(messages.length==1)? 0 : 1])
    document.writeln('</div>')
    document.writeln('</div>')
    document.writeln('</div>')
    }
    </script>
    Questo è il secondo :

    codice:
    <SCRIPT LANGUAGE="javascript">
    function visua()
       {
       var ora = new Date();
       var aa = ora.getDate();
       var mm = ora.getMonth() + 1;
       var yy = ora.getYear();
       var oo = ora.getHours();
       var mn = ora.getMinutes();
       var sec = ora.getSeconds();
       var dd = ora.getDay();
       var aa2  = ((aa < 10) ? "0" : "");
       var mm2  = ((mm < 10) ? ".0" : ".");
       var oo2  = ((oo < 10) ? "0" : "");
       var mn2  = ((mn < 10) ? ":0" : ":");
       var sec2  = ((sec < 10) ? ":0" : ":");
       var Data = aa2 + aa + mm2 + mm  + "." + yy;
       var hh = oo2 + oo + mn2 + mn + sec2 + sec;
       if(document.all)
          document.all.primo.innerHTML = Data;
       else
          if(document.getElementById)
             document.getElementById('primo').innerHTML  = Data;
    		 
       if(document.all)
          document.all.secondo.innerHTML = hh;
       else
          if(document.getElementById)
             document.getElementById('secondo').innerHTML  = hh;
       window.setTimeout("visua()",1000);
       }
    onload=visua;
    </SCRIPT>
    Il primo crea un newsbox che scorre. Mentre il secondo agggiorna l'ora e la data ogni secondo.

    Qualcuno sa dirmi come farli funzionare tutti e due? Grazie!

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    togli questo dal primo script
    window.onload=startscroll

    e sostituisci nel secondo
    onload=visua;
    con
    window.onload = function(){visua();startscroll();}

    ciao

  3. #3
    Utente bannato
    Registrato dal
    Feb 2005
    Messaggi
    171
    Grazie, funziona tutto perfettamete. Ora però ho aggiunto in un'altro <div> un menu dinamico ( con il suo relativo script) e ora ho problemi con lui. Mi viene visualizzato aperto in cascata, e non chiuso che si apre con un clic.

    questo è il codice dello script che agiungo nell <head> :
    codice:
    <script type="text/javascript">
    
    var persistmenu="yes" //"yes" or "no". Make sure each SPAN content contains an incrementing ID starting at 1 (id="sub1", id="sub2", etc)
    var persisttype="sitewide" //enter "sitewide" for menu to persist across site, "local" for this page only
    
    if (document.getElementById){ //DynamicDrive.com change
    document.write('<style type="text/css">\n')
    document.write('.submenu{display: none;}\n')
    document.write('</style>\n')
    }
    
    function SwitchMenu(obj){
    	if(document.getElementById){
    	var el = document.getElementById(obj);
    	var ar = document.getElementById("masterdiv").getElementsByTagName("span"); //DynamicDrive.com change
    		if(el.style.display != "block"){ //DynamicDrive.com change
    			for (var i=0; i<ar.length; i++){
    				if (ar[i].className=="submenu") //DynamicDrive.com change
    				ar[i].style.display = "none";
    			}
    			el.style.display = "block";
    		}else{
    			el.style.display = "none";
    		}
    	}
    }
    
    function get_cookie(Name) { 
    var search = Name + "="
    var returnvalue = "";
    if (document.cookie.length > 0) {
    offset = document.cookie.indexOf(search)
    if (offset != -1) { 
    offset += search.length
    end = document.cookie.indexOf(";", offset);
    if (end == -1) end = document.cookie.length;
    returnvalue=unescape(document.cookie.substring(offset, end))
    }
    }
    return returnvalue;
    }
    
    function onloadfunction(){
    if (persistmenu=="yes"){
    var cookiename=(persisttype=="sitewide")? "switchmenu" : window.location.pathname
    var cookievalue=get_cookie(cookiename)
    if (cookievalue!="")
    document.getElementById(cookievalue).style.display="block"
    }
    }
    
    function savemenustate(){
    var inc=1, blockid=""
    while (document.getElementById("sub"+inc)){
    if (document.getElementById("sub"+inc).style.display=="block"){
    blockid="sub"+inc
    break
    }
    inc++
    }
    var cookiename=(persisttype=="sitewide")? "switchmenu" : window.location.pathname
    var cookievalue=(persisttype=="sitewide")? blockid+";path=/" : blockid
    document.cookie=cookiename+"="+cookievalue
    }
    
    if (window.addEventListener)
    window.addEventListener("load", onloadfunction, false)
    else if (window.attachEvent)
    window.attachEvent("onload", onloadfunction)
    else if (document.getElementById)
    window.onload=onloadfunction
    
    if (persistmenu=="yes" && document.getElementById)
    window.onunload=savemenustate
    
    </script>
    e questo è il codice che inserisco ne body :

    codice:
    <div id="masterdiv">
    
    	<div class="menutitle" onclick="SwitchMenu('sub1')">MENU</div>
    	<span class="submenu" id="sub1">
    		- Link to aaa
    
    		- Link to bbb
    
    		- Email
    
    	</span>
    </div>
    io non capisco perchè mi dia dei conflitti.
    qualcuno sa darmi una mano?
    grazie!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.