将字符串转换为jQuery对象

时间:2013-12-14 01:13:46

标签: jquery

我有一个传递给这个函数的字符串,它是一个元素的ID。我需要它成为一个jQ对象,这是正确的做法吗?

传递给函数:myfunct('gluk')

myfunct = function(t) {

        var target = $(['#' + t]);
        target.someMethod();

    };

当我直接使用$('#gluk').someMethod();时,它可以正常工作,但不能通过上面的函数...

1 个答案:

答案 0 :(得分:1)

通常以这种方式执行会消除jquery的许多优点

这样的事情可能会更好一些。

var myfunct = function(t){
    var target = jQuery(t); //use jQuery in case you ever need noConflict()
    //run typical commands
    target.someMethod();
    target.someMethod2();

    //return jquery object for more
    return target;
}

然后您可以使用myfunct('#id')var obj = myfunct('#id'), height = obj.height();

如果您主要担心的是必须每次都添加#,那么您可以这样做:

var myfunct = function(t){
    var target = jQuery('#'+t); //use jQuery in case you ever need noConflict()
    //run typical commands
    target.someMethod();
    target.someMethod2();

    //return jquery object for more
    return target;
}