如何在jQuery中使用变量。正如您在脚本片段中看到的那样,我给变量分配了一个“ divname”值,当我使用“ Jquery”淡出时,它不起作用。我真正需要的是,当图像悬停时,说明会显示出来作为淡入淡出,当鼠标移开时,说明也应该消失,在此先感谢。

脚本片段

    $j('.img_nofade').hover(function(){
    $j(this).animate({opacity: .5}, 300);
          var i = $j(this).attr('titlename');
          var divname = "'#titleID" + i + "'";
          //alert (divname);
          $j(divname).fadeIn();
    },
    function(){
       $j(this).animate({opacity: 1}, 300);
          $j(divname).fadeOut();
       }
    );


HTML代码

     <img class="img_nofade' src="image-1.gif" titleid='1" />
     <div id="titleID1">my image title 1 </div>


     <img class="img_nofade' src="image-2.gif" titleid='2" />
     <div id="titleID2">my image title 2 </div>

      <img class="img_nofade' src="image-3.gif" titleid='3" />
     <div id="titleID3">my image title 3 </div>

最佳答案

无需使用'字符,只需:

var divname = "#titleID" + i;


在悬停的handlerOut函数中,divname已经超出范围,您应该再次定义它。

09-11 14:59