试着制作我可以移动的盒子,如果我点击它

时间:2015-08-23 16:39:59

标签: javascript jquery

尝试制作jquery脚本,允许我根据我的鼠标移动移动方块,如果我点击它。基本上它没有任何作用,如果我点击框。点击后没有移动框,我不知道为什么,任何人都可以帮助我..

$(function(){
  var clicked=1;
  var ch,x,y,cy,cx;
  $('#box').on("click",function(){
    clicked=clicked+1;
    var ch=clicked%2;
    alert('ch'+ch);
  });
  alert('ifas');
  $('body').mousemove(function(){
    if(ch==0)
    {
      var x=event.pageX;
      var y=event.pageY;
      var cx=('#box').css("left");
      var cy=('#box').css("top");
      if(cx==='auto')
      {
        var cx=0;
      }else{
        var cx=cx.replace('px','')
        }
      if(cy==='auto')
      {
        var cy=0;
      }else{
        var cy=cy.replace('px','')
        }
      var cy=y-cy;
      var cx=x-cx;
      $('#box').css({
        top:cy,
        left:cx,
      });
    }
  });
});

css基本上是100x100的盒子。     https://jsfiddle.net/pL72en07/8/

2 个答案:

答案 0 :(得分:0)

您的主要问题是:

错过了public class FilterConfig { public static void RegisterGlobalFilters(GlobalFilterCollection filters) { //filters.Add(new HandleErrorAttribute()); // <== disable/remove } }

$

在第一次点击处理程序中为var cx=$('#box').css("left"); ^ // missing var cy=$('#box').css("top"); ^ 设置本地var。这意味着从未定义更高级别ch并且永远不会更改

ch

现在盒子移动虽然不顺利,但我不知道你的期望是什么。

答案 1 :(得分:0)

如果你想在按下鼠标时用光标移动一个元素,然后用另一个鼠标按下它来释放它,你可以这样做:

<强> HTML

C:\JBuilderX\jdk1.8\bin\javadoc.exe

<强> JS

// Set the position attribute for the CSS style to absolute 
<div class="moveAble" style="position:absolute;">
    This div is movable!
</div>