除非您单击页面,否则pushState不起作用?

时间:2019-07-14 12:39:29

标签: javascript jquery

按下后退按钮后,以下代码将重定向到Google.com,并且在桌面设备上可以正常运行!但是,在移动设备(Android)上,您必须在页面上的任意位置执行随机单击才能使代码起作用!

$(document).ready(function ($) {

    if (window.history && window.history.pushState) {

        $(window).on('popstate', function () {
            var hashLocation = location.hash;
            var hashSplit = hashLocation.split("#!/");
            var hashName = hashSplit[1];

            if (hashName !== '') {
                var hash = window.location.hash;
                if (hash === '') {
                    window.location = 'https://google.com';
                    return false;
                }
            }
        });

        window.history.pushState('forward', null, './#forward');
    }});

我不知道为什么会这样,所以我尝试通过随机点击HTML标签来解决这个问题:

var interval = setInterval(Randomclick, 3000);

function Randomclick() {
    document.getElementsByTagName('html')[0].click();
    clearInterval(interval);
}

这也不起作用!

0 个答案:

没有答案