Visualizzazione dei risultati da 1 a 5 su 5

Discussione: JavaScript e Chrome

  1. #1

    JavaScript e Chrome - Menu Comparsa

    Confido in un vostro consiglio...
    Nel mio sito ho adottato il sistema di un secondo menu laterale a comparsa utilizzando questo script
    codice:
        function on() {
          document.getElementById("menu-container").style.left = "0px";
        }
        function off() {
          document.getElementById("menu-container").style.left = "-245px";
        }
    e inserendo il contenuto del menu in un div
    codice:
        <div id="menu-container" onmouseover="on();" onmouseout="off();">
          ...
        </div>
    Riporto anche direttamente il sito.
    Tutto funziona perfettamente; mi sono però accorto che utilizzando chrome, lo script sembra non funzionare
    Succede anche a voi? Ho sbagliato qualcosa? Sembra un problema solo di chrome... sapreste consigliarmi una soluzione...
    Vi ringrazio in anticipo!!!

  2. #2
    Ho dato un'occhiata al volo e direi che lo script funziona. Gli eventi vengono lanciati e la proprietà "left" viene aggiornata.
    Potrebbe essere un problema di posizionamento? Prova a dare un'occhiata a quello che succede utilizzando il tool per sviluppatori di chrome e vedere se noti qualcosa di strano.


  3. #3
    Originariamente inviato da antotan
    Ho dato un'occhiata al volo e direi che lo script funziona. Gli eventi vengono lanciati e la proprietà "left" viene aggiornata.
    Potrebbe essere un problema di posizionamento? Prova a dare un'occhiata a quello che succede utilizzando il tool per sviluppatori di chrome e vedere se noti qualcosa di strano.

    In effetti ho appena controllato e lo script sembra funzionare... Con il dev tool di crhome non si nota nulla di anomalo; cosa intendi per "problema di posizionamento"?

  4. #4
    Originariamente inviato da Dark Byakuya
    In effetti ho appena controllato e lo script sembra funzionare... Con il dev tool di crhome non si nota nulla di anomalo; cosa intendi per "problema di posizionamento"?
    Pensavo a qualcosa relativo a come i div sono incastrati tra di loro, dimensione, posizionamento dei div rispetto ai loro parent ecc...
    In realtà il problema sembra più subdolo: sembra come se non venisse effettuato il repaint della porzione in questione. Ho provato ad iniettare questa riga:

    codice:
    $("#menu-container").css("left", "0px"); $("#menu-container").hide(); setTimeout(function() {$("#menu-container").show()}, 200);
    che è una versione "estesa" dell'on. In pratica oltre a modificare "left", obbligo il motore a farmi fare il rendering del div contenitore nascondendolo e poi mostrandolo e nel mio caso vedo il menu laterale. Abbastanza strano...


  5. #5
    Originariamente inviato da antotan
    che è una versione "estesa" dell'on. In pratica oltre a modificare "left", obbligo il motore a farmi fare il rendering del div contenitore nascondendolo e poi mostrandolo e nel mio caso vedo il menu laterale. Abbastanza strano...

    Grazie mille dei consigli, di vedere cose strane ormai sono abituato... cercherò una soluzione

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.