Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    5

    Evidenziare testo di una ricerca in javascript

    è possibile in javascript evidenziare il testo di una ricerca?
    Esempio evidenziare o sottolineare tutte le lettere "a" di una o più parole

    Grazie,
    Carlo

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    E` una cosa che si fa con i CSS.
    JS puo` introdurre i tag opportuni.

    Occorre "metter mano" al codice del tuo sistema di ricerca: fondamentalmente (per i caratteri a):

    str = str.replace(/(a)/ig, "<span class='uu'>$1</span>");

    dove la classe uu sara` definita nel CSS:
    .uu { text-decoration:underline; }
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    5
    Ti ringrazio,
    ma se io volessi leggere e filtrare tutto il testo di una pagina html?
    (ovviamente tag compresi)

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    La regexp non cambia. Quella evidenzia tutti caratteri "a" inclusi nella pagina.

    Ma se e` codice HTML, devi prima sostituire i vari <, >, & ecc.
    Per avere maggiore aiuto dovresti essere piu` preciso.
    Ad esemipio, perche` vuoi fare tutto con JS? Non converrebbe operare lato server?
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  5. #5
    Anche io ho lo stesso problema.
    Non posso operare lato server perchè i risultati di ricerca non dipendono da nessuna base di dati o fiel di testo.
    Ho la necessità di prelevare il testo con js dalla pagina e sostituire le parti che mi interessano con la reg che hai fatto tu.
    Ciao, Matteo.

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    @mrDog:
    Non riesco a capire quale sia il problema.
    La sintassi per la sostituzione e` quella RegExp.
    Hai provato ad usarla?
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  7. #7
    Il problema è che non saprei fare a prelevare tutto il contenuto della pagina e modificare solo quello visibile all'utente.
    Tanto per intenderci non devo modificare la stringa
    ape
    in questo modo
    <<span class='uu'>a</span> href='p<span class='uu'>a</span>gin<span class='uu'>a</span>.htm'><span class='uu'>a</span>pe</<span class='uu'>a</span>>
    Ma deve uscire così:
    <span class='uu'>a</span>pe

    Come posso fare?

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Adesso ti sei spiegato!

    La cosa e` piuttosto complessa.
    Se e` per non-sostituire gli a che stanno vicino ad un <, la cosa e` facile, se invece devi non-sostituire anche gli a che stanno in <frame ...> o <span ...> la cosa non si fa con una semplice RegExp, ma occorre fare uno studio piu` accurato.

    Comunque per il primo caso:
    str = str.replace(/[^\<](a)/ig, "<span class='uu'>$1</span>");
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  9. #9
    Grazie per il consiglio.

    Potresti anche suggerirmi come prelevare tutto il contenuto della pagina tra <body> e </body>?

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Dovrebeb essere uno dei seguenti:
    document.body.innerHTML
    document.getElementsByTagName('body').innerHTML

    Nota che non e` standard, ma funziona in tutti i magigori browser.
    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 © 2025 vBulletin Solutions, Inc. All rights reserved.