重新制作一个JQuery函数以允许随时调用它

时间:2018-12-08 23:39:29

标签: javascript jquery

我知道这是一个愚蠢的问题,但是我对JQuery还是很陌生,我有一个漂亮的基本问题... 在mousemove上调用此函数 如何重新制作它以便可以随时调用?

$(document).on('mousemove', function(e){
	$('#cursor').css({
		left:	e.pageX - 7,
		top:	e.pageY - 7
	});
});

2 个答案:

答案 0 :(得分:0)

由于您需要在嵌套函数内使用指针坐标,因此也许可以在某些变量中跟踪它们。

var posX, posY;

$(document).on('mousemove', function(e){
    $('#cursor').css({
        left:   e.pageX - 7,
        top:    e.pageY - 7
    });
    posX = e.pageX;
    posY = e.pageY;

});

function parentFunction(){
   //Some code

   $('#cursor').css({
        left:   posX - 7,
        top:    posY - 7
    });
}

parentFunction();

答案 1 :(得分:0)

您可能会这样做(请参见代码中的注释):

$(document).ready(function() {

  // setup an object to store mouse position
  var mousepos = {};
  // update the object on mousemove
  $(document).on('mousemove', function(e) {
    mousepos = {
      x: e.pageX,
      y: e.pageY
    }
  });

  // setup a function to update cursor position
  function setCursor() {
    $('#cursor').css({
      left: mousepos.x - 7,
      top: mousepos.y - 7
    });
  }

  // your code
  list = {
    execute: function() {
      // Some code and the nested function 
      setCursor();
    }
  };

  list.execute();

});

希望有帮助。