> Eu queria linkar automaticamente determinados termos, por exemplo,
> sempre que algum texto conter 'Shank', linkar para o meu e-mail, ou
> sempre que tiver 'Adobe', linkar para o site da adobe.
>
> O Zope possuí algum recurso para isso? Alguém de vocês sabe como fazer?
o Plone já faz algo parecido: quando você faz uma busca, todas as palavras
que estão no documento e que batem com o termo procurado ficam em destaque.
Isso é feito da seguinte forma (em _javascript_):
a) ao terminar de carregar um documento, o browser gera o evento 'onLoad';
b) o objeto 'window' possui um 'event listener' que captura este evento e
ativa todas as funções que nele estão registradas;
c) uma dessas funções é a highlightSearchTermsFromURI (definida no arquivo
CMFPlone/skins/plone_ecmascript/highlightsearchterms.js), que simplesmente
substitui o nodo texto do termo em questão por um novo nodo, contendo uma
tag SPAN com uma classe CSS predefinida (highlightedSearchTerm) que por
sua vez contém o nodo texto original.
Parece complicado, mas não é: o que o código _javascript_ faz é, ao terminar
de carregar o documento no qual uma busca por 'abc' foi feita', substituir
todas as ocorrências de 'abc' que estiverem no corpo do documento por
'<span class="highlightedSearchTerm">busca</span>'. Essa classe CSS é
definida em um dos arquivos .css como tendo um fundo (background-color)
amarelo berrante... :-)
Bem, falei de como o Plone faz para realçar os termos de uma busca, mas a
solução do seu problema é análoga: bastaria criar uma nova função que
procure no corpo do documento pelos termos que você quiser e substitua-os
pelo que for preciso. Ou seja, substituir:
- 'Shank' por '<a href="" PROTECTED]">Shank</a>
- 'Adobe' por '<a href="" href="http://www.adobe.com">http://www.adobe.com">Adobe</a>
Por fim, essa nova função também precisará ser registrada no 'event
listener' do objeto 'window' para o evento 'onLoad'. A última linha do
arquivo 'highlightsearchterms.js' mostra como fazer isso.
Acho que deu para passar a idéa... :-)
HTH,
--
Dorneles Treméa
X3ng Web Technology
Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED]
Yahoo! Grupos, um serviço oferecido por: | |
|
Links do Yahoo! Grupos
- Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/zope-pt/
- Para sair deste grupo, envie um e-mail para:
[EMAIL PROTECTED]
- O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do Yahoo!.