jquery $()里能用变量吗

如果我str="id1";
我不想用 $("#id1“) 能不能用str代替

可以的。
$("#"+str)
这个一般是封装通用方法的时候用,比如 操作多个id的时候可以先封装一个方法然后把id传进来。
function showdiv(divid){
$("#"+divid).css("display","block");
}
调用:showdiv("div");
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-09-25

肯定是可以的。

下面是个小例子。仅供参考。

<body>
    <div name="index1"></div>
    <div name="index2"></div>
    <div name="index3"></div>
</body>
<script>
    for(var i=0;i<document.getElementsByTagName('div').length;i++){
        $('[name=index'+i+']').css('background','red');
    }
</script>
虽然没有人,这么用,但是只是说是可以用变量的。

第2个回答  推荐于2018-02-26

可以

str="id1";
$("#"+str);//可代表$("#id1“)
--------------------------------
str=$("#id1");//str 就就代表了 id1

意义不大....

本回答被提问者和网友采纳
第3个回答  2014-06-12
可以尝试下,也许可以。但是这样做个人感觉没什么意义。。因为你多定义了一个变量,就多消耗了资源,如果程序比较大会影响性能。