jQuery movestart是一個事件類型,它在運動開始之前被觸發。當用戶使用鼠標或觸摸屏幕開始移動一個元素時,該事件將會被觸發。
$( ".box" ).on( "movestart", function( event ) { console.log( "Element is being moved" ); });
在代碼示例中,我們可以看到當.box元素被移動時,控制臺將會打印“Element is being moved”這個信息。
使用jQuery movestart事件可以實現許多有趣的交互效果。例如,通過限制用戶拖動元素的范圍,我們可以創建一個簡單的拼圖游戲。
$( ".puzzle-piece" ).on( "movestart", function( event ) { $( this ).data( "origPosition", $( this ).position() ); }); $( ".puzzle-piece" ).on( "move", function( event ) { var originalPosition = $( this ).data( "origPosition" ); var currentPosition = $( this ).position(); if (originalPosition.top != currentPosition.top || originalPosition.left != currentPosition.left ) { $( this ).css( "opacity", 0.5 ); } else { $( this ).css( "opacity", 1 ); } }); $( ".puzzle-piece" ).on( "moveend", function( event ) { var originalPosition = $( this ).data( "origPosition" ); var currentPosition = $( this ).position(); if (originalPosition.top == currentPosition.top && originalPosition.left == currentPosition.left ) { $( this ).addClass( "correct" ); } else { $( this ).removeClass( "correct" ); } });
在這個例子中,我們使用了三個事件:movestart、move和moveend。當用戶開始移動一個拼圖碎片時,我們將其原始位置存儲在數據中。然后,在每次移動事件中,我們將檢查拼圖碎片是否在其原始位置上。如果不是,我們將降低其透明度。在移動結束事件中,我們將檢查拼圖碎片是否回到了其原始位置。如果是,我們將添加一個“正確”類,并且拼圖碎片將被視為正確的拼圖碎片。
下一篇清除某個css樣式