Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    708

    Modifica FCKEditor applicata al link

    Ciao

    mi aiutereste a modificare il codice di FCKEditor nella parte che riguarda l'applicare un collegamento ad un testo e ad un immagine?

    Vorrei sostituire il:

    target="_blank"

    ora codice non + validato per il w3c, con altre 3 stringhe:

    - onclick="window.open(this.href);return false"

    - rel="lightbox"

    - class="lightbox"

    Quello che sono riuscito a fare è scrivere due stringhe in questo modo:

    onclick ="window.open(this.href);return false"

    onclick ="lightbox"

    purtroppo la seconda riga che mi genera l'editor ha sì il valore "lightbox", ma è applicato all' onclick invece di essere applicato al rel:

    rel="lightbox"

    ...l'effetto lightbox con onclick non funziona.

    Premetto che non conosco per nulla Javascript e utilizzo l'FCKEditor per far scrivere codice x pagine ASP linguaggio che conosco.

    Le modifiche che ho apportato sono state semplici xchè ho sostituito i termini e valori di target"_blank" con quelli di onclick.

    Qualc'uno è disposto ad un aiutarmi? Posso postare il codice?

    Pier

  2. #2

    Soluzione definitiva

    Ciao Pier,

    dopo aver perso più di due ore ecco come procedere:

    apri il file fck_link.js

    cerca la linea:

    GetE('txtAttCharSet').value = oLink.charset ;
    e subito sotto metti:

    GetE('txtAttRelation').value = oLink.rel ;

    poi cerca la linea:

    SetAttribute( oLink, 'charset' , GetE('txtAttCharSet').value ) ;
    e subito sotto metti:

    SetAttribute( oLink, 'rel' , GetE('txtAttRelation').value ) ;

    ora salva la pagina js e apri:

    fck_link.html

    cerca:

    </table>


    <div id="divBrowseServer">

    subito sopra aggiungi:

    codice:
    					<tr>
        <td nowrap="nowrap"><span fckLang="DlgGenRel">Lightbox</span>
    </td>
        <td></td>
        <td id="tdTargetFrame2" nowrap="nowrap">
        <select id="txtAttRelation" style="WIDTH: 100%">
        <option value="" selected>No</option>
        <option value="lightbox">Si</option>
        </select>
        </td>
        <td id="tdPopupName2" style="DISPLAY: none" nowrap="nowrap"></td>
    </tr>
    <tr>
        <td nowrap="nowrap">Class
    </td>
        <td></td>
        <td id="tdTargetFrame2" nowrap="nowrap">
    
        <select id="txtAttClasses" style="WIDTH: 100%">
        <option value="" selected>No</option>
        <option value="lightbox">lightbox</option>
        </select>
        </td>
        <td id="tdPopupName2" style="DISPLAY: none" nowrap="nowrap"></td>
    </tr>		
    <tr>
        <td nowrap="nowrap"><span fckLang="DlgGenRel">Finestra</span>
    </td>
        <td></td>
        <td id="tdTargetFrame2" nowrap="nowrap">
    						<select id="cmbTarget" onChange="SetTarget(this.value);">
    							<option value="" fckLang="DlgGenNotSet" selected="selected">&lt;not set&gt;</option>
                                <option value="window.open(this.href);return false" fckLang="DlgLnkTargetNOBlank">Nuova Finestra</option>
     
    						</select>
        </td>
        <td id="tdPopupName2" style="DISPLAY: none" nowrap="nowrap"></td>
    </tr>
    Salva ed hai finito ora quando inserisci un url potrai scegliere se mettere la classe il rel oppure collegare una nuova finestra in _blank

    Immagini allegate Immagini allegate
    Shop2007 & Save Ver.2

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    708
    Grazie Massi funziona!

    Seguendo la tua procedura ho aggiunto al pannello delle immagini il rel, onclick e il class.

    Per prima cosa apriamo fckeditor\editor\lang\it.js

    ed aggiungiamo le variabili per i tre effetti che andiamo ad inserire, quindi cerchiamo questa variabile:
    codice:
    DlgLnkTargetBlank	: "Nuova finestra (_blank)",
    ...SOPRA di essa creiamo le tre nuove variabili, così:

    codice:
    DlgLnkRel 	        : "Nuova finestra (rel)",
    DlgLnkOnclick       : "Nuova finestra (onclick)",
    DlgLnkClass	        : "Nuova finestra (class)",
    Ora salviamo il tutto e con il file it.js abbiamo finito!

    Andiamo avanti aprendo il file: fckeditor\editor\dialog\fck_image\fck_image.js

    In questo file non faremo altro che duplicare, modificare le stringhe che riguardano il target e addattarle alle nostre esigenze. Cerchiamo la stringa:

    codice:
    GetE('cmbLnkTarget').value    = oLink.target ;
    e sotto di questa aggiungiamo queste 3 stringhe:

    codice:
    GetE('cmbLnkRel').value	    = oLink.rel ;
    GetE('cmbLnkOnclick').value   = oLink.onclick ;
    GetE('cmbLnkClass').value	    = oLink.class ;
    Visto che il target è deprecato lo commentiamo, quindi la stringa che abbiamo cercato in precedenza diventa:
    codice:
    //GetE('cmbLnkTarget').value  = oLink.target ;
    Ora cerchiamo sempre in fck_image.js la riga:

    codice:
    SetAttribute( oLink, 'target', GetE('cmbLnkTarget').value ) ;
    e sotto di essa aggiungiamo le tre stringhe:

    codice:
    SetAttribute( oLink, 'rel', GetE('cmbLnkRel').value ) ;
    SetAttribute( oLink, 'onclick', GetE('cmbLnkOnclick').value ) ;
    SetAttribute( oLink, 'class', GetE('cmbLnkClass').value ) ;
    Anche qui commentiamo la riga del target:

    codice:
    //SetAttribute( oLink, 'target', GetE('cmbLnkTarget').value ) ;
    Ora salviamo e chiudiamo.

    Apriamo il file fckeditor\editor\dialog\fck_image.html
    Che non è altro che la pagina html che contiene la form per l’inserimento dell’immagine nelle nostre pagine tramite l’editor.

    Cerchiamo questo pezzo di codice:
    codice:
    <div>
       <span fcklang="DlgLnkTarget">Target</span>
    
          <select id="cmbLnkTarget">
             <option value="" fcklang="DlgGenNotSet" selected="selected">&lt;not set&gt;</option>
             <option value="_blank" fcklang="DlgLnkTargetBlank">New Window (_blank)</option>
             <option value="_top" fcklang="DlgLnkTargetTop">Topmost Window (_top)</option>
             <option value="_self" fcklang="DlgLnkTargetSelf">Same Window (_self)</option>
             <option value="_parent" fcklang="DlgLnkTargetParent">Parent Window (_parent)</option>
          </select>
    </div>
    Sopra di esso, tanto questo viene commentato, aggiungiamo il codice sotto:

    codice:
    <div>
       <table width="40%" border="0">
          <tr>
             <td>
                
                <span>Rel</span>
             </td>
             
             <td>  
                
                <span>Onclick</span>
             </td>
                                
             <td>
                
                <span>Class</span>
              </td>
                                
                 
          </tr>
    
          <tr>
             <td>
                <select id="cmbLnkRel">
                   <option value="" fcklang="DlgGenNotSet" selected="selected">&lt;not set&gt;</option>
                   <option value="lightbox" fcklang="DlgLnkRel">New Window (rel)</option>
                </select>
             </td>
                              
             <td>                      
                <select id="cmbLnkOnclick">
                   <option value="" fcklang="DlgGenNotSet" selected="selected">&lt;not set&gt;</option>
                   <option value="window.open(this.href); return false" fcklang="DlgLnkOnclick">New Window (onclick)</option>
                </select>
             </td>
                              
             <td>
                <select id="cmbLnkClass">
                   <option value="" fcklang="DlgGenNotSet" selected="selected">&lt;not set&gt;</option>
                   <option value="lightbox" fcklang="DlgLnkClass">New Window (class)</option>
                </select>
            </td>
            
         <!--
            <td>
               <select id="cmbLnkTarget">
                  <option value="" fcklang="DlgGenNotSet" selected="selected">&lt;not set&gt;</option>
                  <option value="_blank" fcklang="DlgLnkTargetBlank">New Window (_blank)</option>
                  <option value="_top" fcklang="DlgLnkTargetTop">Topmost Window (_top)</option>
                  <option value="_self" fcklang="DlgLnkTargetSelf">Same Window (_self)</option>
                  <option value="_parent" fcklang="DlgLnkTargetParent">Parent Window (_parent)</option>
               </select>
             <td>
          -->
          </tr>
       </table>
    </div>
    Salviamo, chiudiamo ed abbiamo finito!

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.