mousemove和touchmove

时间:2012-09-24 06:25:34

标签: javascript jquery

我真的很喜欢this visual effect。我想通过touchmove在iphone或ipad中使用它。任何人都可以帮我这个吗?

这是JS:

$(document).bind('mousemove',function(e){
    var docW = $(window).width();
    var docH = $(window).height();

    var diffX = (docW/2) - e.clientX;
    var diffY = (docH/2)-100 - e.clientY;

    var dist = distance(docW/2,docH/2, e.clientX, e.clientY);
    var distM = distance(docW/2,(docH/2)+60, e.clientX, e.clientY);

        // eye                          
        var eye_background = Math.floor( diffX /-30 ) +'px '+ Math.floor( diffY /-30 ) +'px';       
        var eye_translate = Math.floor(diffX/-50 )+'px, '+ Math.floor(diffY/-100 )+'px';    
        $(".eye").css({"background-position":eye_background, "-webkit-transform":'translate3d('+eye_translate+',0)',"-moz-transform":'translate('+eye_translate+')',"-o-transform":'translate('+eye_translate+')',"-ms-transform":'translate('+eye_translate+')' });



});

基本上,我的问题是如何在苹果上完成这项工作?

1 个答案:

答案 0 :(得分:0)

你应该在mousedown上启动一个监听器并在mouseup上停止它。 同时,监听器将循环(例如requestanimationfame或setInterval())您的//eye方法。

这是webGL中的常见过程。 example

http://api.jquery.com/mousedown/

http://api.jquery.com/mouseup/