Prototype: o uso do sinal duplo cifrão ($ $)

Com o recente lançamento de Prototype, Andrew e Christophe ter acelerado e melhorado 'double-dólar "(a função $ utilitário ), que permite que você selecione um elemento especificando o selector (suportado por praticamente todos os seletores CSS3).

O objetivo desta função vai muito além do popular $, o que pode ser útil, mas, no final, não realiza nenhuma operação digna de nota. O utilitário 'double-dólar "($ $), em vez de realmente permite que você selecione qualquer tipo de item, proporcionando excelentes ferramentas para filtrar os elementos no DOM.

Aqui estão alguns exemplos retirados do site oficial:

1
2
3
4
5
) ; // -> Tutti i DIV del documento. $ $ ('Div') / / -> Todos os DIV do documento. Mesma coisa document.getElementsByTagName ('div')!
) ; // -> Uguale a $('contents'), ma ritorna sempre un array. $ $ ('# Conteúdo') / / -> O mesmo que $ ('conteúdo'), mas ela sempre retorna um array.
) ; // -> Tutti fli elementi LI con class 'faux' $ $ ('Li.faux') / / -> Todos os elementos fli LI com 'falso' classe
) ; // -> Tutti i TAG A (links) al di sotto di un elemento con ID "contents" e con un attributo rel $ $ ('# Contents a [rel]') / / -> Todos os TAG A (links) abaixo de um elemento com ID "conteúdo" e com um atributo rel
) ; // -> Tutti i TAG A (links) con un'attributo href con valore "#" (eyeew!) $ $ ('A [href = "#"]') / / -> Todos os TAG A (links) com um valor de atributo href com "#" (eyeew!)

A resistência, no entanto, reside na possibilidade de excluir determinados elementos em favor da outra, por exemplo:

1
) ; // -> Tutti i TAG A (links), esclusi quelli che contengono un attributo rel impostato a "nofollow" $ $ ('A: not ([~ rel = nofollow])') / / -> Todos TAG A (links), exceto aqueles que contêm um atributo rel definido como "nofollow"

Mais interessante ainda é a seguinte:

1
) $ $ ('A [href ^ = #]: not ([href = #])')

Isso, na prática, é tudo uma TAG com o atributo href que começa com '#', mas não leva em conta aqueles que são iguais a '#' só. Em outras palavras, são ignorados os links que apontavam para um ID válido!
Esta característica única de ($ $) inspirado Tobie Langel para criar um script simples (desarmamento) pode adicionar um belo efeito quando se desloca dentro de uma única página HTML você está se movendo âncoras, com a técnica - na verdade - href = "#".
Para uma demonstração clique aqui .

2 comentários para: ""

  1. 28 mar 2007 undolog »Blog Archive» Exemplos de JavaScript discreto :

    [...] Mas o que você pode fazer com esta técnica? Muitas coisas interessantes. Um exemplo interessante que podemos comentar (veja também Prototype: € ™ s uso do sinal duplo cifrão ($ $)) vem de Tobie Langel. Com poucas linhas de código e scricando bibliotecas Prototype e Scriptaculous você pode dar um belo efeito para a âncora clássico de nossas páginas. Primeiro, crie uma página HTML com o seguinte código: PLAIN TEXT HTML: [...]

  2. 09 de maio de 2008 Onde Javascript vitórias | Undolog.com :

    [...] Prototype: o uso do sinal duplo cifrão ($ $) Adobe Apollo Alpha [...]

Deixe um comentário

TAG XHTML permita: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> código de entrada:
 <pre></pre> // blocco generico <code></code> // blocco generico [cc_actionscript][/cc_actionscript] // Actionscript [cc_actionscript3][/cc_actionscript3] // Actionscript 3 [cc_css][/cc_css] // CSS Style Sheet [cc_html][/cc_html] // HTML [cc_js][/cc_js] // Javascript [cc_objc][/cc_objc] // Objective-C [cc_php][/cc_objc] // PHP [cc_sql][/cc_sql] // SQL