jQuery ponto no seletor de ID?

Duplicar Possível:
Como selecionar os nós HTML por ID com jquery quando o id contém um ponto?

Eu tenho um site que contém elementos semelhantes a isso:

Some Cool Thing

Eu não posso selecionar o parágrafo com jQuery como $('#root.SomeCoolThing') porque jQuery pensa, SomeCoolThing é a class de um elemento com id="root" .

Como posso selecionar este elemento com jQuery? Eu gostaria de evitar uma construção como esta:

 $(document.getElementById('root.SomeCoolThing')) 

Use as regras de escape da API de seletores do jQuery da seguinte maneira:

 $('#root\\.SomeCoolThing') 

Dos docs :

Para usar qualquer um dos meta-caracteres (como !"#$%&'()*+,./:;< =>?@[\]^`{|}~ ) Como uma parte literal de um nome, deve ser escapado com duas contrabarras: \\ . Por exemplo, um elemento com id="foo.bar" , pode usar o seletor $("#foo\\.bar") .

Usando o attr funciona:

 $('p[id="root.SomeCoolThing"]') 

Você precisa escaping de caracteres especiais:

 $('#root\\.SomeCoolThing') 

docs:

Se você deseja usar qualquer um dos meta-caracteres (como ! “# $% & ‘() * +,. /:; < =>? @ [] ^` {|} ~ ) Como uma parte literal de um nome, você deve escaping o caractere com duas barras invertidas: \\. Por exemplo, se você tem um elemento com id = “foo.bar”, você pode usar o seletor $ (“# foo \\. bar”).

Você pode escaping do período usando algo assim

 $("#root\\.SomeCoolThing") 

Como obtenho o jQuery para selecionar elementos com um. (período) no seu ID? http://groups.google.com/group/jquery-en/browse_thread/thread/ba072168939b245a?pli=1

Fotografar a partir do quadril aqui, mas se você não puder alterar o ID do elemento, tente usar este seletor:

 $("p[id=root.SomeCoolThing]") 

Use duas barras invertidas antes de cada caractere especial

  $('#root\\.SomeCoolThing')