2013-01-19 80 views
0

我尝试使用jquery.mousewheel plugn开发一个简单的演示。但是,三角洲从未改变。 我下面的代码:Jquery.mousewheel:增量不会改变

<head> 
    <script src="jquery-1.7.2.min.js"></script> 
    <script src="jquery.mousewheel-3.0.4.pack.js"></script> 
    <script type="text/javascript"> 
     $(function() { 
      $("#myImage").mousewheel(function (event, delta) { 
       var a = $("#txtResult").val()=="NaN"?0:parseInt($("#txtResult").val()); 
       var b = delta; 

       $("#txtResult").val(a+b); 
       event.stopPropagation(); 
       event.preventDefault(); 
     }); 
     }); 
    </script> 
</head> 
    <body> 
     <img id="myImage" src="QQ截图20130119105432.png" style="width: 200px;height: 200px" /> 
     <input id="txtResult" type="text" value="0"/> 
    </body> 

当我操作我的鼠标滚轮鼠标移动到图像之后,$("#txtResult").val()从未改变。 有什么想法?

回答

0

你的JavaScript代码是错误的。它应该是这样的:

$(function() { 
    $("#myImage").mousewheel(function (event, delta) { 
     var a = parseInt($("#txtResult").val()); 
     var b = delta; 

     $("#txtResult").val(a + b); 
     event.preventDefault(); 
    }); 
}); 

parseInt将解析null0所以额外的检查是不必要的。 此外,在这种情况下,event.stopPropagation();是无用的。

+0

嗨,我再次测试该应用程序,并发现了这个错误的原因是的jquery.js的版本不支持jquery.mousewheel.js。在用低版本替换jquery.js之后,代码运行良好。但是,我需要使用最新版本。任何想法? –

+0

我自己解决了。这是因为mousewheel.js的版本无法匹配jquery.js –