2013-04-22 43 views
2

我目前有這個代碼,允許我移動屏幕上的圖像按鈕。但我想知道我將如何能夠將圖像按鈕移動到另一個位置,並且一旦它改變了,我就可以點擊按鈕但不能移動。是的,我希望按鈕在第一次移動時被移動,然後在下一次他們回到站點時按鈕不可移動。使可移動的圖像按鈕靜態移動

var x; 
    var y; 
    var bool; 
    bool =1; 
    function move(event){ 
      x= event.clientx; 
      y = event.clienty 
      document.getElementByID('img_btn').style.top=y+'px'; 
      document.getElementByID('img_btn').style.left=y+'px'; 
    } 
+0

你需要按鈕只能移動一次,然後變得靜止?如果您爲按鈕本身提供標記,這將有所幫助,因此我們可以看到正在處理的事件。最好的選擇是隻要移動處理程序,如果這是所需的效果。 – 2013-04-22 13:09:38

+0

是的,我希望按鈕在第一次移動時被移動,然後在下一次他們回到站點時按鈕不可移動。 – user2306809 2013-04-24 09:14:59

+0

一個非常遙遠的想法是使用ajax來存儲布爾值並在'document.ready'上再次獲取它。但正如我所說,這非常複雜,可能對您的要求太多。 – KevinIsNowOnline 2013-04-24 09:19:47

回答

0

您可以嘗試使用布爾值作爲條件語句來判斷按鈕是否已被移動。例如:

var x; 
var y; 
var moved; 
moved = false; 
function move(event){ 
     if(!moved){ 
      x = event.clientx; 
      y = event.clienty 
      document.getElementByID('img_btn').style.top=y+'px'; 
      document.getElementByID('img_btn').style.left=y+'px'; 

      moved = true; 
     } 
} 
+0

這不會工作,因爲如果用戶要回到該頁面,那麼它將會再次移動,而不是靜態的 – user2306809 2013-04-24 09:07:07

+0

他回答說,它應該是靜態的,然後返回到頁面之前回答了這個問題。將它存儲在會話中或服務器端。所有代碼都會在您每次返回頁面時重置。 – nickcorin 2013-04-26 17:06:27

1

如果您希望按鈕是靜態的下一次訪問,那麼你應該保存「感動」變量或者cookie或服務器端。