[英]iPhone jQuery actions with drag and drop
我正在努力實現以下目標。 當用戶將圖標拖到html頁面中的特定位置並保持約3秒鍾時,它必須自動創建一個新頁面(如果沒有頁面),否則轉到下一頁(或上一頁)。
使用jQuery是否可以實現? 如果是,我應該如何實現?
我發現並嘗試以下解決方案:
使用Remy Sharp mousedrop插件。 在此插件中,我可以使用timerinterval來計算我是否在特定區域中停留了一段時間。
$(this).mousedown(function(interval))
{
}
但是以某種方式,我無法通過jQuery UI的拖放功能來完成此工作。 我已經使用jQuery UI開發了一些代碼,但是是否有用? 我真的不知道
$("#pickUpDiv").draggable({
start: function () {
},
drag: function() {
var timeOutPointer = -1;
var focusElm = $("#focusCenter");
var leftTopPos = focusElm.position();
var height = focusElm.height();
var width = focusElm.width();
var rightBottomPos = {
right: leftTopPos.left + width,
bottom: leftTopPos.top + height
};
var pos = $(this).position();
if ((pos.left > leftTopPos.left && pos.top > leftTopPos.top) && (pos.left < rightBottomPos.right && pos.top < rightBottomPos.bottom)) {
$(document).mousehold(function(timerInterval) {
if (timerInterval == 30) {
createNewPage();
} else {
}
});
}
},
stop: function() {
}
});
這是我的測試設置:
<div id="focusCenter" style="height: 200px; width: 200px; border: 1px solid black;">
</div>
<div id="pickUpDiv" style="height: 100px; width: 100px; background-color: red;">
</div>
我希望有人可以幫助我,或者至少為我指明正確的方向... :)預先謝謝您。
您可能需要配合touchstart
touchmove
和touchend
事件
以下是有關移動瀏覽器對鼠標/觸摸事件的處理的文章: http : //blogs.adobe.com/adobeandjquery/2011/03/07/the-current-state-of-touch-events/
編輯:
決定將我的評論編輯成我的答案:
我做了類似的事情。 我所做的是,當鼠標進入一個對象時,我向該對象添加了一個類,並設置了超時時間,以查看該對象在n秒后是否仍然具有一個類。 在mouseout上刪除類並刪除計時器。 如果解釋不夠,我將看看是否可以找到示例代碼。 Mine用於在樹形結構中拖放“文件”並在懸停並等待后擴展文件夾。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.