Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012

    da proprieta ad oggetto

    buongiorno

    trovandomi nella situazione in cui mi viene passato un oggetto tipo 'pippo.innerHTML', volendo risalire a pippo, come si opera in js?
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Non credo sia possibile... in effetti tu hai una stringa di testo e vorresti sapere cosa l'ha generata? tipo:
    codice:
      <div id="pippo">pluto</div>
      vedi
     </BODY>
      <script>
    function vedi(cosa) {
      alert(cosa.chiTiHaFatto())
     }
      </script>
    Personalmente non credo, ma sto ad osservare
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Non puoi passare pippo e da questo poi ottenere innerHTML?

    Se per qualche ragione vuoi invece continuare a usare questa strada ti consiglio l'utilizzo di qualche "escamotage":

    codice:
    function prendi(obj, prop)  {
      if(!obj || !prop) return null;
      var get = obj[prop];
      if(get) { 
        get = Object(get); 
        get._parentObj = obj;
      }
      return get;
    }
    
    //Esempio:
    
    var html = prendi(document.getElementById("obj"), "innerHTML");
    alert(html._parentObj);
    Più di questo dubito che tu possa fare

  4. #4
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    il motivo per cui mi pongo questa domanda è il seguente:

    ho una funzione a cui passo dei parametri
    codice:
    pippo({target: pippo.innerHTML,value: ciao mondo})
    mi trovo a dover quindi operare sul riferimento innerHTML.

    nel momento in cui però volessi, automaticamente anche dare a pippo uno style.border='1px solid red', allora dovrei risalire tipo salmone dalla proprietà all' oggetto stesso....


    pensavo sinceramente, in prima battuta ad individuarlo tramite split sulla stringa, ma lo vedo limitante nel caso in cui passo oggetti complessi....

    data la gerarchia della notazione, sarebbe plausibile pensar di andare a fare un split('.') e prendere in considerazione tutti gli elementi tranne l' ultimo, quindi
    codice:
    pippo({target: pippo.innerHTML,value: ciao mondo})
    
    function pippo(Els)
    {
    var ciccio=Els.target;
    
    var Expl=ciccio.split('.');
    Expl[Expl.length-2] = null;
    var ObjDiRiferimento = Expl.join('.'); //ed eccolo qui
    }
    perfetto se mi venisse passata una stringa!

    ma target E' e DEVE essere un oggetto....

    a menochè non lo passo come oggetto e internamente lo possa convertire in stringa...
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  5. #5
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    up!

    hola mega
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  6. #6

  7. #7
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    ancora no, sto cercando di capire anche come funziona il discorso 'constructor' perchè secondo me è interessante..

    facendo diverse prove ho notato che qualsiasi proprietà di un oggetto, con il seguente codice

    Codice PHP:

    var pippo=document.getElementById('frutto').innerHTML;
    alert typeof pippo.constructor // restituisce la funzione String()

    var pluto =document.getElementById('frutto');
    alert typeof pluto.constructor // restituisce object 
    si ain IE che FF, e Safari invece si comportapressappoco come FF ...

    che sia la strada buona?
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  8. #8
    Onestamente non capisco come ti possa aiutare la proprietà constructor
    Essa ti serve a capire qual'è la classe che ha generato l'oggetto; tra l'altro il secondo alert da 'undefined' in IE, ma questa è un'altra storia...

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.