Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    Script di scroll interferisce con Adsense

    Ho inserito uno script di scrolling preso da DynamicDrive, ma mi da qualche problema con Mozilla (e presumo anche con FF, ma nn avendolo sottomano nn posso dire), mentre funziona perfettamente con IE e Opera.

    Il problema è che nella stessa pagina è presente anche lo script di Adsense e quando lo script di scolling fa lo scroll, il banner pubblicitario mi sfarfalla 5-6cm + in su di dove dovrebbe essere!

    Siccome ho la sensazione di nn essermi spiegato poi tanto bene, ho messo online una pagina di prova: Prova

    il codice dell script è:
    codice:
    <script type="text/javascript">
    
    /***********************************************
    * Pausing updown message scroller- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
    * This notice MUST stay intact for legal use
    * Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
    ***********************************************/
    
    //configure the below five variables to change the style of the scroller
    var scrollerdelay='3000' //delay between msg scrolls. 3000=3 seconds.
    var scrollerwidth='150px'
    var scrollerheight='150px'
    var scrollerbgcolor='#C2A793'
    //set below to '' if you don't wish to use a background image
    var scrollerbackground=''
    
    //configure the below variable to change the contents of the scroller
    var messages=new Array()
    messages[0]="
    
    Click here to go back to Dynamicdrive.com frontpage</p>"
    messages[1]="
    
    Visit JavaScriptKit for award winning JavaScript tutorials</p>"
    messages[2]="
    
    Get help on scripting and web development. Visit CodingForums.com!</p>"
    messages[3]="
    
    Looking for Free Java applets? Visit Freewarejava.com!</p>"
    messages[4]="
    
    If you find this script useful, please click here to link back to Dynamic Drive!</p>"
    
    ///////Do not edit pass this line///////////////////////
    
    var ie=document.all
    var dom=document.getElementById
    
    if (messages.length>2)
    i=2
    else
    i=0
    
    function move(whichdiv){
    tdiv=eval(whichdiv)
    if (parseInt(tdiv.style.top)>0&&parseInt(tdiv.style.top)<=5){
    tdiv.style.top=0+"px"
    setTimeout("move(tdiv)",scrollerdelay)
    setTimeout("move2(second2_obj)",scrollerdelay)
    return
    }
    if (parseInt(tdiv.style.top)>=tdiv.offsetHeight*-1){
    tdiv.style.top=parseInt(tdiv.style.top)-5+"px"
    setTimeout("move(tdiv)",50)
    }
    else{
    tdiv.style.top=parseInt(scrollerheight)+"px"
    tdiv.innerHTML=messages[i]
    if (i==messages.length-1)
    i=0
    else
    i++
    }
    }
    
    function move2(whichdiv){
    tdiv2=eval(whichdiv)
    if (parseInt(tdiv2.style.top)>0&&parseInt(tdiv2.style.top)<=5){
    tdiv2.style.top=0+"px"
    setTimeout("move2(tdiv2)",scrollerdelay)
    setTimeout("move(first2_obj)",scrollerdelay)
    return
    }
    if (parseInt(tdiv2.style.top)>=tdiv2.offsetHeight*-1){
    tdiv2.style.top=parseInt(tdiv2.style.top)-5+"px"
    setTimeout("move2(second2_obj)",50)
    }
    else{
    tdiv2.style.top=parseInt(scrollerheight)+"px"
    tdiv2.innerHTML=messages[i]
    if (i==messages.length-1)
    i=0
    else
    i++
    }
    }
    
    function startscroll(){
    first2_obj=ie? first2 : document.getElementById("first2")
    second2_obj=ie? second2 : document.getElementById("second2")
    move(first2_obj)
    second2_obj.style.top=scrollerheight
    second2_obj.style.visibility='visible'
    }
    
    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>')
    }
    
    if (window.addEventListener)
    window.addEventListener("load", startscroll, false)
    else if (window.attachEvent)
    window.attachEvent("onload", startscroll)
    else if (ie||dom)
    window.onload=startscroll
    
    </script>
    </div>
    <div align="center">
      <script type="text/javascript" language="JavaScript" SRC="http://codice.shinystat.it/cgi-bin/getcod.cgi?USER=GloriousEnd"></script>
      <noscript>
      <A HREF="http://www.shinystat.com" target="_top">
      </A>
      </noscript>
    Che posso fare??

    grazie

  2. #2

  3. #3

  4. #4

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Il codice da te postato genera del codice HTML. Non e` facile "andarci dietro".

    Il problema che individui (interazione tra due script), nella maggior parte delle volte e` dovuto a:
    - utilizzo di variabili globali con lo stesso nome (e` facile verificarlo e cambiare uno dei nomi in tutte le occorrenze in uno degli script)
    - utlizzo di eventi comuni (gli eventi sono introdotti da parole del tipo onqualcosa (ad esempio onclick, onmouseover, onfocus, onblur, ...)

    Nel tuo caso occorre anche verificare cosa genera quello script (che codice HTML viene creato) e controllare che non ci siano identificatori o nomi uguali.

    Riesci a fare questi controlli da solo?
    Ricorda ceh tu sei la persona che piu` di altri conosce la tua pagina, per cui sei il piu` adatto per fare questi controlli.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  6. #6
    Ok, la teoria di ciò che hai detto mi è chiara

    Se mi dici "come" controllare il codice html creato provo ad arrangiarmi e magari vi posto le possibili soluzioni che mi verranno in mente.

    Intanto guardo se nei due script trovo eventi comuni.

    Grazie

  7. #7
    Dunque, siccome di js ci capisco poco.. ma veramente poco... al massimo posso arrivare ad avere qualche intuizione... quindi mi serve decisamente una mano.

    Posto anche lo script pubblicitario così che sia + chiaro il tutto:
    codice:
    <script language="javascript" type="text/javascript">
    google_color_border = "FF9900";
    google_color_bg = "FFFFFF";
    google_color_link = "FF0000";
    google_color_url = "0066FF";
    google_color_text = "000000";
    document.write('<s'+'cript language="javascript" src="http://ad.altervista.org/alternet.ad?c=19&f=1&'+new Date().getTime()+'"></s'+'cript>');
    </script>
    Seguendo il consiglio che mi è stato dato qualche post prima, ho cercato nello script dello scroll qualche possibile evento simile e al massimo ho trovato questo:

    codice:
    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>')
    Purtroppo come sopra detto, non ho però idea di come poter provare a modificare lo script x farlo andare...
    Chi mi può aiutare??

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Il primo script, non fa altro che caricare un altro script esterno, passando anche alcuni parametri, tra cui l'ora (forse per implementare il trucco di non usare uno script uguale eventualmente presente in cache).

    Dovresti controllare che lo script caricato da adsense non abbia variabili globali comuni o eventi gia` usati.

    Nel pezzetto del secondo script, non ho visto eventi
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  9. #9
    Perdonami, hai ragione, me ne sono accorto solo ora che me l'hai fatto notare...

    Ho trovato lo script di adsense, solo che come sottolineato.. di js ci capisco poco... ma voglio sistemare sta cosa.

    Quindi mi servirebbero delle linee guida, delle info su cui poi posso lavorare, cose del tipo: le variabili globali sono quelle con if o con var? E gli eventi.. come li riconosco?

    Detto questo, quando li trovo torno per consigli su come sistemare, dato che nn ne sarò capace... sigh

    x chi fosse interessato, linko lo script di adsense: js Adsense

    grazie.

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Dovresti leggerti i primi capitoli di un tutorial sui JS ...

    Variabili globali:
    definite fuori dalle funzioni oppure definte dentro le funz senza il var
    Variabili locali:
    definite all'interno delle funz. con la parola chiave "var"

    Eventi:
    nel codice HTML:
    sono delle specie di attributi dei tag, ma iniziano con le lettere "on"

    Nel codice JS:
    sono definiti con:
    OGGETTO.onQUALCOSA
    dove OGGETTO e` qualsiasi oggetto definito nella pagina HTML
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

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 © 2024 vBulletin Solutions, Inc. All rights reserved.