2012-02-12 9 views
1

次のjQueryを使用して、ユーザーが左右にスワイプして同じドキュメント内の別のページに移動できるようにします。スワイプを使用してURLを変更し、データ方向を制御します

$('#main').bind('swiperight', function(){ 
    window.location = '#menu'; 
}); 
$('#main').bind('swipeleft', function(){ 
    window.location = '#showcase'; 
}); 
$('#showcase').bind('swiperight', function(){ 
    window.location = '#main'; 
}); 

問題はデータ方向を制御できないことです。ユーザーが右にスワイプすると、コンテンツが左から右に、またはその逆に移動することは意味があります。

アイデア?

ありがとうございます!

+0

私は問題を取得しません。あなたがswiperightを引き起こすことができるなら、なぜそれを左から右にスライドさせるのではないのですか? – danwit

答えて

1

代わりのwindow.locationを使用して、あなたはこの使用できます。文字列「スライド」(前後に)方向を指示した後

// swiperight function 
$.mobile.changePage("#menu", "slide", true, true); 

// swipeleft function 
$.mobile.changePage("#showcase", "slide", false, true); 

にブール値を。 changePage機能上の

ドキュメント:http://jquerymobile.com/test/docs/api/methods.html

私はこの記事で、このソリューションの一部を発見した:これは私の作品

$('#main').bind('swiperight', function(){ 
    $.mobile.changePage("#menu",{ 
     reverse: true, 
     transition: "slide" 
}); 
}); 

$('#main').bind('swipeleft', function(){ 
    $.mobile.changePage("#showcase",{ 
     transition: "slide" 
}); 
}); 
$('#showcase').bind('swiperight', function(){ 
    $.mobile.changePage("#main",{ 
     reverse: true, 
     transition: "slide" 
}); 
}); 

sliding left to right transition in jQuery Mobile

+0

情報@shanabusありがとう。これは私がすでに持っているのと同じ効果を発揮するので、私はまだ同じ問題を抱えています。 http://voyced.com/mobileにファイルをアップロードしました。問題は、ページが最初に読み込まれ、右にスワイプするときです。方向は左に移動します。メインページに戻り、もう一度右にスワイプすると、正しく動作します。奇妙な!? – DanV

0

はこれを試してみてください! :)