Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2011
    Messaggi
    192

    Rilevare focus di editor WYSIWYG

    Come rilevo il focus di un DIV utilizzato come editor WYSIWYG?

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    I div non hanno focus
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2011
    Messaggi
    192
    Come faccio dunque a sapere se quell'editor è attivo o meno?

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Dipende cosa intendi per attivo, potresti verificare il display o l'altezza del div
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2011
    Messaggi
    192
    Come per un qualunque textarea/input per l'evento onfocus e onblur.
    Per chiarirci: Quando il cursore all'interno è attivo.

    Vorrei quindi sapere quando il cursore è attivo su quel div (con contenteditable su true)

  6. #6
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Originariamente inviato da dimoshake
    Come per un qualunque textarea/input per l'evento onfocus e onblur.
    Per chiarirci: Quando il cursore all'interno è attivo.
    codice:
    window.onload=function(){
    document.getElementById("idtextarea").onfocus=function(){alert('cursore attivo')}
    }
    Vorrei quindi sapere quando il cursore è attivo su quel div (con contenteditable su true)
    Per un div (editable o meno) potresti usare l'evento onmouseover/onmouseout ma non è proprio la stessa non mi viene altro
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2011
    Messaggi
    192
    Originariamente inviato da cavicchiandrea
    codice:
    window.onload=function(){
    document.getElementById("idtextarea").onfocus=function(){alert('cursore attivo')}
    }
    Sisi, textarea/input era solo un esempio per riferirmi al div


    Originariamente inviato da cavicchiandrea
    Per un div (editable o meno) potresti usare l'evento onmouseover/onmouseout ma non è proprio la stessa non mi viene altro
    Dopo vari giramenti sono riuscito a trovare una soluzione
    Il tuo "mouseover/mouseout" mi ha fatto venire in mente una soluzione, anche se c'entra poco con questi eventi. Grazie

  8. #8
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Originariamente inviato da dimoshake
    Sisi, textarea/input era solo un esempio per riferirmi al div




    Dopo vari giramenti sono riuscito a trovare una soluzione
    Il tuo "mouseover/mouseout" mi ha fatto venire in mente una soluzione, anche se c'entra poco con questi eventi. Grazie
    Sarebbe utile indicare la soluzione trova potrebbe servire in futuro ad altri
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2011
    Messaggi
    192
    Hai ragione.

    Main
    codice:
    TextArea_D = document.getElementsByClassName('Att_TextArea_DIV');
    Pos = 0;
    
    if(Is_Object_In_Object(window.getSelection().anchorNode,TextArea_D[Pos])){
      /* Div attivo */
    }
    Alcune funzioni
    codice:
    function Is_Object_In_Object(Object1,Object2){
    	
    	IN = false;
    	if(Defined(Object1)){
    		while((Object1 != Object2) && (Defined(Object1.parentNode))){
    			Object1 = Object1.parentNode;
    			if(Object1 == Object2)IN = true
    		}
    	}
    	return IN;
    
    }
    
    function Defined(Var){
    	return ((typeof(Var) != 'undefined') && (Var != null)) ? true : false;
    }

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.