Well I think I am going to be going with a function as that was my
first instinct.
I see where your going with what you have however that would cause
some issue if say an int or JSON object is passed as it is going to
return that instead of an expected jQuery object. The code I end up
having is:
function get_object_from_id(variable)
{
if(typeof variable == 'string')
{
variable = $('#' + variable);
}
else if(variable instanceof jQuery)
{
//already a jQuery object so we need to do nothing
}
else
{
//error code
}
return variable;
};
Not sure how to handle the error (whether to throw an exception or
just return null or what not) but this way I can handle it if
something else is passed besides a string or jQuery object.
And even tho I doubt the jQuery object are going to stop being an
instance of jQuery any time soon, if it does, I have one location to
change my code.
Thanks for you advance.
On Aug 23, 4:30 pm, "Michael Geary" <[email protected]> wrote:
> If all you need to do is distinguish a string from a jQuery object, and you
> want to insure that future revisions of jQuery will never break your code, I
> would just test for the string.
>
> I'd also put the logic in a function even if you only use it in one place,
> e.g.
>
> // Return a jQuery object given either a string id or
> // an existing jQuery object or DOM element
> function $fromID( id ) {
> if( typeof id == 'string' ) id = '#' + id;
> return $(id);
> }
>
> And then code:
>
> var $form = $fromID(form);
>
> -Mike
>
>
>
> > From: Eridius
>
> > I am wondering what is the safest way to test if a variable
> > is a jQuery object. I am building a function where I want to
> > be able to pass in either the id of the form or the form
> > object itself. The current way I am doing this is
>
> > var $form = (form instanceof jQuery ? form : $('#' + form));
>
> > Is this the safest way that is not likely to change? Would I
> > be better offer wrapping this functionality into a function
> > all by itself so incase this does change, I only need it to
> > change in one spot (plan on building a complete UI type framework)?