鼠标在使用jquery函数时图像不会改变

时间:2015-06-06 06:01:03

标签: php jquery html

 <a href="#">
    <div class="col-md-5 campaigns" id="hoverimg">
      <img class="featurette-image img-responsive" src="images/tee1.png" >     
        <li class="progressbar">
           <p>
               <!--<strong>Orders Completed</strong>--> <span class="pull-right small muted">78%</span>
           </p> 
           <div class="progress tight">
                <div class="bar" style="width: 78%;">
                </div>
           </div>
        </li>
        <div class="prodheading">
            <h2>Heading 1</h2>
        </div>
    </div>
</a>

jQuery代码:

<script>
             $('document').ready(function ()
         {
             $(function ()
             {
                $("#hoverimg")
                    .mouseover(function ()
                     {
                         var src = $(this).attr("src").match(/[^\.]+/) + "images/tee2.png";
                         $(this).attr("src", src);
                     })
                     .mouseout(function ()
                     {
                         var src = $(this).attr("src").replace("images/tee2.png");
                         $(this).attr("src", src);
                     });
             });
});

 </script>

我没有得到这背后的真正问题。

3 个答案:

答案 0 :(得分:2)

通过在每一行前面加//来完全注释掉您的JavaScript。如果你想要发生任何事情,必须删除它们。

有一些问题:

.replace()是一个JavaScript String方法,需要两个参数:

  1. 正则表达式和
  2. 替换字符串。
  3. .match(/[^\.]+/) + "images/tee2.png可能无法按预期执行:.match(/[^\.]+/)将返回应用的字符串的第一部分,而不是点('.')。这真的是你想要做的吗?

    示例:

    "path/subpath/filename.ext".match(/[^\.]+/) + "images/tee2.png"
    

    将返回

    "path/subpath/filenameimages/tee2.png"
    

答案 1 :(得分:1)

您已将ID应用于div标记,而在jquery中,您尝试获取src。您必须将id分配给img代码。

答案 2 :(得分:0)

 $("#hoverimg1").hover(
     function() {$(this).attr("src","images/teee2.png");}, 
     function() {$(this).attr("src","images/teee1.png");
   });