相关疑难解决方法(0)

如何检测浏览器后退按钮事件 - 跨浏览器

你如何明确地检测用户是否按下了浏览器中的后退按钮?

如何使用#URL系统在单页Web应用程序中强制使用页内后退按钮?

为什么地球上没有浏览器按钮触发他们自己的事件!?

javascript cross-browser back single-page-application

188
推荐指数
11
解决办法
42万
查看次数

如何使用javascript停止浏览器后退按钮

我正在做php的在线测验应用程序.我想在回到考试时限制用户.我尝试过以下脚本,但它会停止我的计时器.我该怎么办请建议我.我已经包含了源代码.计时器存储在cdtimer.js中

<script type="text/javascript">
        window.history.forward();
        function noBack()
        {
            window.history.forward();
        }
</script>
<body onLoad="noBack();" onpageshow="if (event.persisted) noBack();" onUnload="">
Run Code Online (Sandbox Code Playgroud)

我有考试计时器,它从mysql数据库中获取考试时间,并相应地启动计时器,当我把代码禁用后退按钮时它停止.会是什么问题.

javascript browser

137
推荐指数
15
解决办法
45万
查看次数

阻止BACKSPACE使用jQuery导航(如Google的主页)

请注意,在Google的主页上,不关注任何元素,按BACKSPACE会将焦点放入搜索工具栏而不是向后导航.

我怎么能做到这一点?

我的应用程序中的用户一直遇到此问题.他们没有专注于任何元素,并点击BACKSPACE将其抛出应用程序.

javascript jquery

39
推荐指数
3
解决办法
5万
查看次数

如何在JavaScript中输入键盘输入?

我想在JavaScript中使用键盘输入,其中箭头键在按下时将导致特定形状的形状发生变化.如何获取JavaScript中任何键的输入?

javascript

33
推荐指数
3
解决办法
12万
查看次数

如何使用jQuery捕获退格键?

按下退格键时,似乎不会触发jQuery keyup,keydown或keypress方法.如何捕获退格键?

jquery

31
推荐指数
2
解决办法
10万
查看次数

使用jQuery编辑表单时确认离开页面

我正在编写一个表单,我需要像stackoverflow这样的函数:"你已经开始编写或编辑帖子了."

我已经查看了stackoverflow的代码,看看他们是如何做到这一点的,但我根本没有把它应用到我的简单表单中.这就是他们对question.js的看法:

function initNavPrevention(b) {
    if (b.which == "undefined") {
        return
    }
    var a = $("#wmd-input");
    a.unbind("keypress", initNavPrevention);
    setConfirmUnload("You have started writing or editing a post.", a)
}
Run Code Online (Sandbox Code Playgroud)

其中一个函数触发了这个(我不知道c是什么):

if (c) {
    e.keypress(initNavPrevention)
}
Run Code Online (Sandbox Code Playgroud)

最后他们必须setConfirmUnload(null);禁用它我想.

我的情况很简单.我有一个页面,我加载了一个<form />通过AJAX,我想阻止加载此表单离开页面而不点击SUBMIT按钮或如果用户单击取消,表单被禁用,预防将不会弹出.

拥有此代码,有人可以告诉我如何将其包含在我的网站上吗?

这是我加载表单的AJAX函数:

$("#projects_historics_edit_part_1").click(function(){
    $("#ajax-loader").fadeIn('normal');

    $.ajax({
        url: BASE_URL + 'projects/ajax/get_historics_edit_part_1/' + PROJECT_ID,
        type: "POST",
        success: function(data) {
            $("div#projects_historics_part_1").html(data);

            $("#client").autocomplete(client_autcomplete_options);

            var inicofin = $("#initdate, #findate").datepicker(initdate_datepicker_options);
        }
    });

    $("#ajax-loader").fadeOut("normal");

    return false;    
});
Run Code Online (Sandbox Code Playgroud)

先感谢您!

jquery

18
推荐指数
2
解决办法
3万
查看次数

防止退格在AngularJS中导航回来

我在AngularJS webapp中遇到了这个问题.

当用户输入带有要填写的表单并且他开始键入的页面时,如果他按下退格键并且焦点不在输入文本上,则页面将进入先前状态.

我使用jQuery 查找了这个解决方案,但它似乎不适合在AngularJS中实现这一点.

javascript jquery backspace angularjs

7
推荐指数
2
解决办法
1万
查看次数

如何使用JavaScript阻止浏览器的退格按钮的默认历史记录返回操作?

当用户在浏览器上按退格键时,有没有办法阻止默认操作发生?我不需要阻止用户离开,只需要进行默认的退格操作.我需要退格键做一些不同的事情(这是一场游戏).

我尝试没有成功:

window.addEventListener('keydown', function(e) {
    if (e.keyCode === Game.Key.BACK_SPACE)
    {
        e.preventDefault();
        e.stopPropagation();
        return false;
    }
}, false);
Run Code Online (Sandbox Code Playgroud)

如果我在if内部发出警报,则会显示退格键按下警报.所以,keyCode是正确的.

编辑:这必须适用于Opera 10.6,Firefox 4,Chrome 6,IE 9和Safari 5.

javascript events

6
推荐指数
1
解决办法
1万
查看次数

如何使用JavaScript在IE 6 7 8 9中分离事件

这是部分代码,而不是完整版.

我有一个突出显示特定html元素的荧光笔mouse hovers.

我也有click event and listener.

我的问题是:highlighter event/listener使用Internet Explorerv6 v7 v8 v9 时不会分离

我究竟做错了什么?

这是我如何附加事件并启动事件监听器:

if (document.body.addEventListener) {
                        //alert(11);
                        document.body.addEventListener('mousemove', handler, false);
                    } else if (document.body.attachEvent) {
                        //alert(12);
                        var ff=function(e) {
                            return handler(e || window.event);
                        };
                        //alert(ff);
                        document.body.attachEvent('onmousemove', ff);
                    } else {
                        //alert(13);
                        document.body.onmousemove = handler;
                    }
Run Code Online (Sandbox Code Playgroud)

这就是我停止onmousemove/mouse事件/监听器的方法:

if (document.body.removeEventListener) {
                    document.body.removeEventListener('mousemove', handler, false);
                } else if (document.body.detachEvent) {
                    document.body.detachEvent('onmousemove', function(e) {
                        return handler(e || window.event);
                    });
                } else {
                    document.body.removeAttribute("onmousemove"); …
Run Code Online (Sandbox Code Playgroud)

javascript bookmarklet javascript-events

5
推荐指数
1
解决办法
9260
查看次数

无法在 Ubuntu 14.04 中使用 Chrome 64 位在输入类型=“数字”中退格。适用于 Firefox

我正在尝试使用 Biff MaGriff 发布的以下代码作为早期解决方案,以防止使用退格键导致浏览器返回历史页面。我的问题是代码不允许在 type="number" 中退格(删除)字符。

$(document).keydown(function (e) {
    var preventKeyPress;
    if (e.keyCode == 8) {
        var d = e.srcElement || e.target;
        switch (d.tagName.toUpperCase()) {
            case 'TEXTAREA':
                preventKeyPress = d.readOnly || d.disabled;
                break;
            case 'INPUT':
                preventKeyPress = d.readOnly || d.disabled ||
                    (d.attributes["type"] && $.inArray(d.attributes["type"].value.toLowerCase(), ["radio", "checkbox", "submit", "button"]) >= 0);
                break;
            case 'DIV':
                preventKeyPress = d.readOnly || d.disabled || !(d.attributes["contentEditable"] && d.attributes["contentEditable"].value == "true");
                break;
            default:
                preventKeyPress = true;
                break;
        }
    }
    else
        preventKeyPress = false;

    if (preventKeyPress) …
Run Code Online (Sandbox Code Playgroud)

javascript jquery types numbers backspace

5
推荐指数
0
解决办法
2901
查看次数

禁用Atom-shell中的退格

我一直在搜索interwebz和Atom-shell文档,试图找出如何在浏览器窗口中禁用密钥的back()功能backspace.

我宁愿不必诉诸javascript onkeydown监听器(这是有效的),而是使用更原生的东西,而不是更多的应用程序级别而不是浏览器窗口级别.

javascript electron

5
推荐指数
1
解决办法
1056
查看次数