目標は、スワイプ イベントで開閉する 2 つのパネル (左パネル、右パネル) を持つページを作成することですが、レスポンシブ デザイン (画面が十分に大きい場合、ユーザーが 1 つのパネルを開いたままにできるなど) も有効にすることです。ページコンテンツの使用中)。
JQM サイト ( http://view.jquerymobile.com/1.3.1/dist/demos/examples/panels/panel-swipe-open.html http://view.jquerymobile.com/1.3) で良い例を見つけました。 1/dist/demos/widgets/panels/ (パネルをレスポンシブにするセクション)
私は本当に近づきました。小さな画面では、スワイプで完全に開いたり閉じたりできます。大画面 (パネルが保持され、コンテンツが応答する場所) では、スワイプしてパネル自体を閉じることしかできません。ページのコンテンツをスワイプしても何も起こりません。次のコードをテストすると、スワイプ イベントが呼び出されていることがわかります。
$( document ).on("swipeleft swiperight", "#index", function( e ) {
console.log('swiped!!')
// We check if there is no open panel on the page because otherwise
// a swipe to close the left panel would also open the right panel (and v.v.).
// We do this by checking the data that the framework stores on the page element (panel: open).
if ($.mobile.activePage.jqmData( "panel" ) !== "open") {
if ( e.type === "swipeleft" ) {
$( "#right-panel" ).panel( "open" );
} else if ( e.type === "swiperight" ) {
$( "#left-panel" ).panel( "open" );
}
}
});
私はcssコードも見てきました:
.ui-responsive-panel .ui-panel-dismiss-display-reveal {
display: none;
}
(表示をコメントアウトすると、大画面でページの内容を使用できなくなります)。