2015-05-11 31 views
0

我在構建的網頁上遇到了非常奇怪的行爲。 我想爲用戶刪除圖片並想撤消該操作並將圖片放回時實現撤消功能。奇怪的問題:變量未在觸摸屏上定義

現在用戶可以將圖像拖動到左側,並在箱子砸。當他點擊UNDO按鈕時,圖片應該恢復到最後已知的位置。

在代碼我添加位置和所述對象的一個​​數組的名稱:

deletedProfiles.push({"id": CandidateId, "posX": PositionX, "posY": PositionY}); 

之後,當用戶點擊UNDO按鈕,我讀出的最後一個值該陣列並用它來恢復DIV,並再次重新定位它的最後位置知道:

// GET THE VALUES FROM THE LAST PROFILE OUT OF THE HISTORY 
historyId = deletedProfiles[deletedProfiles.length-1].id; 
historyPositionX = parseInt(deletedProfiles[deletedProfiles.length-1].posX); 
historyPositionY = parseInt(deletedProfiles[deletedProfiles.length-1].posY); 

// RESTORE THE PROFILE 
$('#' + historyId).removeClass("grey").addClass("color"); 
$('#' + historyId).fadeIn(250); 
$('#' + historyId).offset({ top: historyPositionY, left: historyPositionX}); 

現在,當我打開這個網頁上我的筆記本電腦,我執行需要採取的行動,它完美的作品。 當我使用連接到我的筆記本電腦的觸摸屏並且只刷新同一頁面時,deletedProfiles[deletedProfiles.length-1].id返回爲「未定義」。

在我的平板電腦有同樣的問題,它不承認的變量。

我已經確信的變量是被加載到頁面上,以防止那些尚不存在的變量所做的任何電話的第一件事。另外,當你點擊UNDO按鈕時,它確實聲明數組中有1個元素。

我試圖在小提琴中重現它,但沒有任何運氣。我已經上傳了一個減小版本的頁面http://bit.ly/1AR6l0Z

只是一些指令來測試它: - 拖動圖片到左邊,並將其放在灰色區域,將出現並將其放入。圖片將消失。

  • 單擊UNDO按鈕,在您放下圖片後將立即出現。

  • Alertboxes將信息彈出。

如果有人有一個想法,爲什麼發生這種情況,請啓發我。

您的信息:我使用Chrome作爲瀏覽器。

謝謝!

回答

0

你檢查,如果你的「拖放」事件適用於平板電腦,它可能不會被觸發,而不是把你的陣列?

,我發現這個問題,如果它沒有幫助我在這裏很新:)這可能是類似 ipad drag and drop

對不起

+0

它確實是因爲畫面淡出。當你按UNDO鍵時,它也顯示數組中有1個元素。這部分工作。 – Cainnech