Como saber que um determinado objeto ja foi carregado na Pagina

2,704 views
Skip to first unread message

Ruan Candido Monteiro de Morais

unread,
Mar 15, 2011, 9:52:16 AM3/15/11
to jque...@googlegroups.com
Oi galera to precisando de um help para descobrir se um determinado
objeto ja foi carregado na Pagina.

Tem como saber isso com jquery?

Agradeço desde Já.

--
Ruan Candido
Front-End Engineer
http://www.webkod.com.br/

Mateus Souza

unread,
Mar 15, 2011, 10:41:25 AM3/15/11
to jque...@googlegroups.com
if($('#elemento').length) alert('Elemento carregado!')

Fernando Almeida

unread,
Mar 15, 2011, 10:48:11 AM3/15/11
to jque...@googlegroups.com
Se for pra executar algo logo após ele ter sido carregado pode ser com o evento ready.


2011/3/15 Mateus Souza <mateuss...@gmail.com>
if($('#elemento').length) alert('Elemento carregado!')



--
Fernando Almeida
www.fernandoalmeida.net

Neto Neto

unread,
Mar 15, 2011, 11:23:26 AM3/15/11
to jque...@googlegroups.com

if( $('#id-do-elemento').size() ) alert('O elemento existe no DOM')

Ou dá para usar a idéia do @Mateus:


if($('#elemento').length) alert('Elemento carregado!')

Que aparenta ser mais rápido.

Neto - Web developer
+55 81 8169.4400 / http://jneto.net.br

Humberto Cruz

unread,
Mar 15, 2011, 1:10:34 PM3/15/11
to jque...@googlegroups.com
O problema do método com o .lenght eh que se o objeto nao tiver sido carredo, ele passa direto...

com o ready ele vai executar sempre, assim que o objeto carregar...

[]s
Humberto

2011/3/15 Neto Neto <sputin...@gmail.com>



--
[]s
Humberto

Suissa

unread,
Mar 15, 2011, 1:17:04 PM3/15/11
to jque...@googlegroups.com
size funciona para todos?




--
Jean C. Nascimento aka Suissa
Professor - FAFIT - Itararé - SP
Especializando em Desenvolvimento Web

WebDeveloper - wgbnet.com.br/ | localclub.com.br/
NoSQL Evangelist - nosqlbr.com.br/
iGrape Coordenador PHP - igrape.org/
TheWebMind Evangelist - thewebmind.org/

      



Ruan Candido Monteiro de Morais

unread,
Mar 15, 2011, 2:57:53 PM3/15/11
to jque...@googlegroups.com
Valeu galera pela força!

2011/3/15 Suissa <jnasc...@gmail.com>



--
Ruan Candido
Técnico Gráfico e Web Design
http://www.webkod.com.br/

Neto Neto

unread,
Mar 15, 2011, 3:16:52 PM3/15/11
to jque...@googlegroups.com
O médoto size serve para todos:

http://api.jquery.com/size/

"Return the number of elements in the jQuery object."

Humberto, creio que não faz diferença, visto que $('#elemento') retorna um array, e .length apenas retorna o tamanho desse array.

Mateus Souza

unread,
Mar 15, 2011, 3:39:54 PM3/15/11
to jque...@googlegroups.com
De acordo com a minha experiencia, o $('#elemento').ready() é uma farsa das brabra, aliás todo ready é uma MENTIRA!

1º O ready só "funciona" uma vez, porque depois que carregou o DOM, a var isReady é setada como true, ai sempre que executar o ready novamente ele vai pegar a var isReady e checar, se tiver true ele dispara...

O que estou querendo dizer, é que se você inserir - OU NÃO - um elemento no DOM (depois de ter carregado o DOM) o jQuery sempre retornará "true" para este elemento... dizendo que o elemento existe, quando na verdade não existe :)

2º $(document).ready ou $('#elemento').ready faz exatamente é o mesmo que $.ready. Ou seja, passar o ready via seletor - $('seletor') - vai criar um objeto a mais sem necessidade alguma, porque o jQuery não usa o seletor... além de aumentar o tamanho do seu código. Tanto é que você pode fazer $().ready() e não terá nenhum problema.

Enfim, você deve ver o código fonte :P.

Por outro lado, $('#elemento').lenght é uma propriedade do Objeto Array, não do jQuery. Resumindo, .lenght só será maior que 0 (zero, false..) se o DOM - via jQuery - encontrar algum elemento que bate com o seletor.

Finalizando, a técnica mais eficiente é $('#elemento').lenght ou  $('#elemento').size() - que retorna o valor de $('#elemento').lenght.

Entendestes? :)

========================
Mateus Souza - Webdeveloper Freelancer 

Ruan Candido Monteiro de Morais

unread,
Mar 15, 2011, 3:59:57 PM3/15/11
to jque...@googlegroups.com
Entendi valeu vou testar agora

Neto Neto

unread,
Mar 15, 2011, 4:29:16 PM3/15/11
to jque...@googlegroups.com
Calma @Mateus, nada é farsa.

O problema é que você talvez esteja querendo usar uma coisa para fazer outra. o ready nunca serviu para verificar se um elemento existe, ele é sim usado para ver se o documento está pronto. e de fato funciona muito bem.
O fato de voltar sempre true depois da primeira vez, é que o documento só fica pronto uma vez .
Agora, depois de pronto, o cara pode ir colocando mais coisas mas ele já está pronto, não tem como ele de "desaprontar" para depois ficar "pronto de novo".
32A.png

Rodrigo Mendonça

unread,
Mar 15, 2011, 4:34:22 PM3/15/11
to jque...@googlegroups.com
Eu prefiro o size() pq é mais fácil de escrever.. Mas no jquery fala que o o length é mais preferido por que não causa do overhead

"however, the.length property is preferred because it does not have the overhead of a function call."

O que seria esse overhead, algum tipo de estouro? loop infinito?




--
Rodrigo Mendonça
(62) 8567-3142

32A.png

Mateus Souza

unread,
Mar 15, 2011, 4:37:40 PM3/15/11
to jque...@googlegroups.com
Então... é isto que quero dizer, talvez tenha me expressado errado, rs.


Lukz'Strife

unread,
Mar 15, 2011, 4:37:51 PM3/15/11
to jque...@googlegroups.com
acho que seria o msmo motivo para usar o bind('event') ao invés de .event . Se o size() chama o length, melhor usar direto o .length e não causar sobrecarga no js

=D

Lucas Padilha Gois

 

A bitter taste of that terrible ilusion: hope

My profiles: Facebook LinkedIn Flickr Twitter
Contact me: Google Talk/ raziel.lpg Skype/ lukz.gois MSN/ spiderman_lpg
32A.png

Neto Neto

unread,
Mar 15, 2011, 4:50:48 PM3/15/11
to jque...@googlegroups.com
É isso aí @Lucas!

Se o size() chama o length internamente, o cara vai direto ao length, sem ter que acionar o size().
é um caminho mais curto.

Pra que ligar para a secretária se eu tenho o numero do telefone de chefe?

Marlon Renan Teixeira

unread,
Mar 15, 2011, 8:50:52 PM3/15/11
to jque...@googlegroups.com
Salve gente boa,
e em relação ao load(). Eu não poderia usá-lo nesse caso tbm?
por exemplo:

$('#elemento').load(function(){
  alert('carregou');
});

desse jeito é como eu faço para saber se uma imagem foi carregada..

2011/3/15 Neto Neto <sputin...@gmail.com>
--

Suissa

unread,
Mar 15, 2011, 10:04:28 PM3/15/11
to jque...@googlegroups.com
huahuahua bem dessa, por isso perguntei. Sempre usei o length.

--



--

Neto Neto

unread,
Mar 16, 2011, 12:25:04 AM3/16/11
to jque...@googlegroups.com
$('#id-da-imagem').bind('load', function(){ alert('Imagem carregada') })

Mas não sei se funciona em todos os casos

2011/3/15, Suissa <jnasc...@gmail.com>:


> huahuahua bem dessa, por isso perguntei. Sempre usei o length.
>
> On Tue, Mar 15, 2011 at 5:50 PM, Neto Neto <sputin...@gmail.com> wrote:
>
>> É isso aí @Lucas!
>>
>> Se o size() chama o length internamente, o cara vai direto ao length, sem
>> ter que acionar o size().
>> é um caminho mais curto.
>>
>> Pra que ligar para a secretária se eu tenho o numero do telefone de chefe?
>>
>>
>>
>> Neto - Web developer
>> +55 81 8169.4400 / http://jneto.net.br
>>
>> --
>> Grupo de jQuery Brasil.
>>
>> REGRAS: http://groups.google.com/group/jquery-br/web/regras-do-grupo
>>
>> USE O JSBIN.COM / JSFIDDLE.NET PARA CÓDIGOS.
>>
>> Email: jque...@googlegroups.com
>> Biba: jquery-br+...@googlegroups.com
>> Site: http://groups.google.com/group/jquery-br?hl=pt-BR
>>
>
>
>
> --
> Jean C. Nascimento aka Suissa
> Professor - FAFIT - Itararé - SP
> Especializando em Desenvolvimento Web
>

> WebDeveloper - wgbnet.com.br/ <http://www.wgbnet.com.br/> |
> localclub.com.br<http://www.localclub.com.br>


> /
> NoSQL Evangelist - nosqlbr.com.br/
> iGrape Coordenador PHP - igrape.org/
> TheWebMind Evangelist - thewebmind.org/
>

> <http://www.linkedin.com/profile/view?id=46505642>
> <http://www.facebook.com/suissa>
> <http://twitter.com/suissacorp> <http://www.delicious.com/suissa>
> <jnasc...@gmail.com>

Suissa

unread,
Mar 16, 2011, 6:56:46 AM3/16/11
to jque...@googlegroups.com
Creio que podemos finalizar o tópico com a indicação de .size e .length ok?
Especializando em Desenvolvimento Web

WebDeveloper - wgbnet.com.br/ | localclub.com.br/
NoSQL Evangelist - nosqlbr.com.br/
iGrape Coordenador PHP - igrape.org/
TheWebMind Evangelist - thewebmind.org/

Marlon Renan Teixeira

unread,
Mar 16, 2011, 12:03:12 PM3/16/11
to jque...@googlegroups.com
kkkk.. opa ok,
só perguntei mesmo pra não ficar com a dúvida :D
vlw ae galera
abraço

2011/3/16 Suissa <jnasc...@gmail.com>
Reply all
Reply to author
Forward
0 new messages