Hi,
I want to observe all a tags on my page with a class of listelement.
For some reason the code on this page does not work...it doesnt throw
an error but it doesnt alert out
var tot = $$(''a.listelement'');
tot.each(function(lf) {
lf.observe(''click'', function(event){
alert("hi");
});
})
any ideas?
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Spinoffs" group.
To post to this group, send email to
rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-spinoffs?hl=en
-~----------~----~----~----~------~----~------~--~---
Tobie Langel
2008-Jan-28 10:26 UTC
Re: adding on observe to elements selected by classname
try:
var tot = $$(''a.listelement'');
tot.each(function(lf) {
lf.observe(''click'', function(event){
alert("hi");
event.stop();
});
})
oh... and make sure you are initiatting this on dom:loaded, not
before!
document.observe(''dom:loaded'', function() {
var tot = $$(''a.listelement'');
tot.each(function(lf) {
lf.observe(''click'', function(event){
alert("hi");
event.stop();
});
})
});
that''s typically a good candidate for event delegation. (try googling
if you''re not familiar with the concept).
Best,
Tobie
On Jan 28, 11:16 am, elduderino
<jamesfiltn...-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org>
wrote:> Hi,
>
> I want to observe all a tags on my page with a class of listelement.
> For some reason the code on this page does not work...it doesnt throw
> an error but it doesnt alert out
>
> var tot = $$(''a.listelement'');
> tot.each(function(lf) {
> lf.observe(''click'', function(event){
> alert("hi");
> });
>
> })
>
> any ideas?
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Ruby on Rails: Spinoffs" group.
To post to this group, send email to
rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
To unsubscribe from this group, send email to
rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org
For more options, visit this group at
http://groups.google.com/group/rubyonrails-spinoffs?hl=en
-~----------~----~----~----~------~----~------~--~---
aha yes thats it.....i think it was maybe because i did have that codde outside of my dom:loaded code! Thanks On Jan 28, 10:26 am, Tobie Langel <tobie.lan...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:> try: > > var tot = $$(''a.listelement''); > tot.each(function(lf) { > lf.observe(''click'', function(event){ > alert("hi"); > event.stop(); > }); > > }) > > oh... and make sure you are initiatting this on dom:loaded, not > before! > > document.observe(''dom:loaded'', function() { > var tot = $$(''a.listelement''); > tot.each(function(lf) { > lf.observe(''click'', function(event){ > alert("hi"); > event.stop(); > }); > }) > > }); > > that''s typically a good candidate for event delegation. (try googling > if you''re not familiar with the concept). > > Best, > > Tobie > > On Jan 28, 11:16 am, elduderino <jamesfiltn...-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org> wrote: > > > Hi, > > > I want to observe all a tags on my page with a class of listelement. > > For some reason the code on this page does not work...it doesnt throw > > an error but it doesnt alert out > > > var tot = $$(''a.listelement''); > > tot.each(function(lf) { > > lf.observe(''click'', function(event){ > > alert("hi"); > > }); > > > }) > > > any ideas?--~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---
On Jan 28, 12:54 pm, elduderino <jamesfiltn...-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org> wrote:> aha yes thats it.....i think it was maybe because i did have that > codde outside of my dom:loaded code! Thanks > > On Jan 28, 10:26 am, Tobie Langel <tobie.lan...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > > > try: > > > var tot = $$(''a.listelement''); > > tot.each(function(lf) { > > lf.observe(''click'', function(event){ > > alert("hi"); > > event.stop(); > > }); > > > }) > > > oh... and make sure you are initiatting this on dom:loaded, not > > before! > > > document.observe(''dom:loaded'', function() { > > var tot = $$(''a.listelement''); > > tot.each(function(lf) { > > lf.observe(''click'', function(event){ > > alert("hi"); > > event.stop(); > > }); > > }) > > > }); > > > that''s typically a good candidate for event delegation. (try googling > > if you''re not familiar with the concept). > > > Best, > > > Tobie > > > On Jan 28, 11:16 am, elduderino <jamesfiltn...-gM/Ye1E23mwN+BqQ9rBEUg@public.gmane.org> wrote: > > > > Hi, > > > > I want to observe all a tags on my page with a class of listelement. > > > For some reason the code on this page does not work...it doesnt throw > > > an error but it doesnt alert out > > > > var tot = $$(''a.listelement''); > > > tot.each(function(lf) { > > > lf.observe(''click'', function(event){ > > > alert("hi"); > > > }); > > > > }) > > > > any ideas?There is an even shorter (more elegant) way to do this with prototype: document.observe(''dom:loaded'', function() { $$(''a.listelement'').invoke(''observe'', ''click'', function(li) { alert(''Hello world!''); }); }); Greetz, Wizz Invoke is a method uses the each method internally (I think...) but it allows you to specify the callback function on a single line. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Spinoffs" group. To post to this group, send email to rubyonrails-spinoffs-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-spinoffs-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-spinoffs?hl=en -~----------~----~----~----~------~----~------~--~---