question

Ajuda com javascript, por favor. Estou tentando localizar texto em um documento html, envolve-la na marca span.?

Estou tentando encontrar uma maneira de realçar o texto em uma página. Exceto que o texto em si não é inicialmente carregado com tags especiais. Estou fazendo uma pesquisa dentro da página via prompt de javascript. Eu quero o script para pesquisar o documento já carregado para localizar todas as ocorrências da seqüência de caracteres de texto e alterá-lo.

Isso precisa ser compatível com o Firefox.
resposta Resposta
Solução usando jQuery para simplicidade e Regex :), devem ser bom para ir. Esperançosamente protegido contra usando tags parciais também, então procura por 'spa', 'span', 'textarea' irá destacar o texto correspondente, mas vai evitar Rótulos próprias.

<html><head><title>Realçar texto</title>

<style type="text/css">

    .highlight{

        color:red;

    }

</style>

<script type="text/javascript">

$(function(){

    highlight();

})

function highlight(){

    var span = "<span class='highlight'>";

    var string = prompt("Search string:").replace( /[-[\]{}()+?.,\\^$|#\s]/g, "\\$&");

    var regexp = new RegExp("((^|>)[^<]?)\\b" +string+ "\\b([^>]?(<|$))","gm");

    console.log($('body').html());

    $('body').html( $('body').html(). replace(regexp,"$1" + span+ string+ '</span>$3'));

}

</script></head><body>

texto

    <div>

texto

    </div>

    <span>texto em vários locais</span>

    <div>Eu gosto de <span>eu sou aninhado texto </span>que meu texto acontece para aparecer mais

a página, texto bobo</div>texto

</body></html>

ComentáriosComentários
Acho que a resposta não está correta ou que você gostaria de acrescentar mais
alguma informação? Envie o seu comentário abaixo..

Guest


HTML não é permitido!

Image Code

Digite os caracteres que aparecem na imagem por isso sabemos que você é humano!

Receber um email quando alguém acrescenta outro comentário a esta pergunta



Topo da página


Home  Terms
Copyright © Accelerated Ideas 2005-2024
All rights reserved