Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/423.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否可以在web浏览器中捕获所有事件?_Javascript_Jquery_Events_Project - Fatal编程技术网

Javascript 是否可以在web浏览器中捕获所有事件?

Javascript 是否可以在web浏览器中捕获所有事件?,javascript,jquery,events,project,Javascript,Jquery,Events,Project,我正在做一个宠物项目,目前正处于研究阶段 快速总结 我试图截取所有表单提交、onclick和每一个keydown。我选择的库是jquery或jquery+prototypejs。我认为我可以将事件批处理到队列/堆栈中,并以时间间隔批处理将其发送回服务器,以保持性能相对稳定 担心 表单提交和更改将相对简单。。差不多 $("form :inputs").bind("change", function() { ... record event... });

我正在做一个宠物项目,目前正处于研究阶段

快速总结 我试图截取所有表单提交、onclick和每一个keydown。我选择的库是jquery或jquery+prototypejs。我认为我可以将事件批处理到队列/堆栈中,并以时间间隔批处理将其发送回服务器,以保持性能相对稳定

担心 表单提交和更改将相对简单。。差不多

$("form :inputs").bind("change", function() { ... record event... }); 
但是如何确保优先于应用程序处理程序,因为当出现验证问题时,我有一个习惯,就是在我的许多表单处理程序上设置return false。据我所知,这有效地阻止了事件的发展

我的项目 对于我的小型远程客户,我将把他们的产品放到VPS上,或者在我的家庭数据中心运行。目前,我使用一个基本的身份验证系统,给他们一个用户名/密码,让他们看到网站,然后希望能给我发一些理智的说明,说明什么是坏的或应该调整的


作为一个更好的解决方案,我已经编写了一个简单的代理web服务器,它可以执行上述操作,但允许我有一个DNS条目,然后根据凭据发出内部请求,中继头并根据需要重新写入URL。每一个html/text或application/*请求都被压缩并放入一个sqlite表中,这样我就可以部分地重播它们所做的事情。现在我转到前端,希望捕获页面上所有内容的点击、按键和提交。

通过
返回false问题,请尝试使用自定义事件

// Bind custom event to all forms

    $('form').bind('custom_submit_event',function() {
        alert('custom submit event');
    });

// Bind submit event to all forms that triggers the custom event

    $('form').submit(function() {
        $(this).trigger('custom_submit_event');
    });

// Your regular submit event for a specific form

    $('#myform').submit(function() {
        // Run validation/submission code
        return false;
    });
    $(document).click(function() {
        alert('click')
    })
    .keydown(function() {
        alert('keydown')
    });
我没有经常使用自定义事件,但这对我很有用。不知道为什么它不能与其他活动一起使用

您还可以将处理程序分配给
文档
。只要不点击
返回false问题,它们将出现在文档中。可能比在整个页面中使用许多事件处理程序的开销更好(效率更高)

    $(document).click(function() {
        alert('click')
    })
    .keydown(function() {
        alert('keydown')
    });

我认为你的想法可能是最好的解决方案,今天就写一个快速的模型,不管结果如何,把它贴到我的misc上。谷歌项目转储。