jQuery - Add click event to Div and go to first link found
        Posted  
        
            by LuckyShot
        on Stack Overflow
        
        See other posts from Stack Overflow
        
            or by LuckyShot
        
        
        
        Published on 2010-04-15T15:28:48Z
        Indexed on 
            2010/04/15
            15:33 UTC
        
        
        Read the original article
        Hit count: 411
        
Hi guys,
I think I've been too much time looking at this function and just got stuck trying to figure out the nice clean way to do it.
It's a jQuery function that adds a click event to any div with a click CSS class found in the page and when clicked it redirects the user to the first link found in the div.
function clickabledivs() {
    $('.click').each(
        function (intIndex) {
            $(this).bind("click", function(){
                window.location = $( "#"+$(this).attr('id')+" a:first-child" ).attr('href');
            });
        }
    );
}
The code simply works although I'm pretty sure there is a fairly better way to accomplish it, specially the selector I am using: $( "#"+$(this).attr('id')+" a:first-child" ) looks too long and slow. Any ideas? 
Please let me know if you need more details. Thanks!
PS: I've got some jQuery benchmarking reference from Project2k.de here: http://blog.projekt2k.de/2010/01/benchmarking-jquery-1-4/
© Stack Overflow or respective owner