当前位置: 首页 > 面试题库 >

Ajax发布onbeforeunload不起作用

谯志诚
2023-03-14
问题内容

该代码将鼠标移动坐标存储在数组中,并且应该在卸载之前将其发布。但是它不发布。如果我改变

名称:移动

名:“布拉布拉”

有用。表示问题出在“ moves”变量上。我该如何运作?

$(document).ready(function(){


var moves = [];

$("html").mousemove(function(e){
moves.push(e.pageX + "x" + e.pageY) 
});


window.onbeforeunload = function() {

$.ajax({

      type: "POST",
      url: "mailyaz.php",
      data: {
      name: moves;
      }
      });

});

});

问题答案:

你可以试试看 这是我几个月前开发的一个小例子。在这种情况下,坐标存储在文本文件中,但是您可以使用INSERT替换它到数据库中。

在客户端上输入:

    var moves = ""; //Now an String to store the Coords

    $(document).ready(function(){
        //When you moves the mouse inside the Page then 
        //concat the Coords into the String var and add a Line-Brak at the end
        $("html").mousemove(function(e){
            moves += (e.pageX + " x " + e.pageY + "\n");

        });

        //Here the magic happen: bind a function to onbeforeunload event that POST
        //the String to the server
        $(window).bind('beforeunload', function() {

            $.post("server.php",{name:moves});

        });

    });

现在,您需要在服务器端创建一个名为server.php的页面,其中包含

    //Capture the String
    $cursorMoves = ($_POST['name']);

    $myFile = "testFile.txt";
    $fh = fopen($myFile, 'w');
    fwrite($fh, $cursorMoves);
    fclose($fh);


 类似资料:
  • 问题内容: 我在一个控制器中使用了以下代码; 我调试了它,它涉及返回行,但是没有发生重定向。是否可以在Ajax.BeginForm内执行此操作?这是剃刀代码; 问题答案: 您无法从服务器重定向AJAX操作。如果您希望浏览器以AJAX操作重定向,则需要使用javascript进行重定向。显然,使用AJAX重定向绝对没有用。如果您打算重定向,请使用常规的Html.Begin表单,不要打扰AJAX。

  • 问题内容: 因此,这源于昨天的一个问题,由于错误不寻常,该问题迅速失控。这个问题仍然存在,但是这里的问题被搁置了,我被要求改革一个新问题,该问题现在与当前问题有关。所以我们开始。 这个问题本质上是基本的。如果您昨天在帮忙,我已经从$ .post切换到$ .ajax帖子,以将变量传递到我的文件中。但是,我的文件似乎从未收到此变量,表明索引为“未定义”。 现在,这通常意味着该变量不包含任何值,命名错误

  • 我在运行Jenkins 1.571。我正在使用构建我的项目。我有两次执行以分叉模式执行两个testng套件。 生成日志显示: 我的相关pom.xml:

  • 问题内容: 尝试访问$ container的’.box’类时,在ajax调用内部使用(this)不起作用。 如果不清楚我要做什么,我会尝试更改动态元素的css。但是例如 根本没有调整css。如果我将其移到ajax,success部分之外,它可以工作,但是我无法获得“描述”。 问题答案: 你近了 在您使用它的上下文中,“ this”是指ajax请求,而不是发出事件的事物。要解决此问题,请在发出aja

  • 问题内容: 嗨,我正在使用我的登录页面。我需要像这样传递数据 我正在使用POST方法发送数据,我已经在DHC中进行了检查,Api在DHC中工作正常,并且我正在获取JSON Response ,但是当我尝试使用Volley时,我无法获得响应。甚至在我的logcat中也没有任何错误。 JAVA代码 错误 问题答案: 解决了您的问题。刚刚使用和传递的参数形式: 无需覆盖或。 问题:1 因为服务器接受了a

  • 问题内容: 我已经尝试过两种方法。 方式1 方式二 这两种工作方式上的镀铬细,但由于某种原因与IE不发送数据的,或根本。 我已经在本地服务器和实时Web服务器上进行了尝试,两者都得到了相同的结果。 在这里使用IE10。 问题答案: ~~~~ 应该 您将变量的值作为键传递,因此,如果您的服务器端资源期望它实际上看到了该变量的值。 这可能不是IE10问题,这不应该像在任何浏览器中一样起作用。 更新资料