Chrome не поддерживает мой javascript

#javascript

#javascript

Вопрос:

Я просто хочу, когда пользователь заходит на мой сайт и закрывает окно, тогда я хочу знать причину ухода с моего сайта.

Итак, я отправляю пользователя на страницу опроса, используя следующий скрипт.

Это работает в любом браузере, но не в Chrome

 <script type="text/javascript">

window.onbeforeunload = confirmExit;

function confirmExit() {
    if (location.href.indexOf("index.php") != -1)
    {
        location.href = "http://www.test.com/survey.php";
        return "Press 'cancel to go 'survey'";
    }
}

</script>
  

Комментарии:

1. Лично я не собираюсь отвечать на этот вопрос, потому что я не верю, что это хорошая практика. Вы не должны перенаправлять пользователей, когда они покидают вашу страницу, я бы счел это вредоносным.

2. Я бы, конечно, не стал отвечать на опрос, в который меня только что принудили! И, конечно, я буду продолжать использовать Chrome 😉

3. Я бы поспорил, что Chrome не делает то, что вы ищете, только потому, что это довольно раздражает, если честно. Это все равно, что избегать всплывающих окон. Однако я не уверен.

4. Принудительно проводя собеседование при выходе пользователей, я могу предположить несколько особенностей сайта: низкое качество, некачественный контент, несуществующий трафик.

Ответ №1:

Вы пробовали использовать window.location = ("http://www.test.com/survey.php"); or window.open ("http://www.test.com/survey.php"); вместо этого? Это может быть проще сделать.

Вы также можете сделать window.open ("http://www.test.com/survey.php", '_newtab'); Это позволит пользователям меньше расстраиваться, когда они будут вынуждены перенаправлять после выхода, потому что это будет на новой вкладке.

Ответ №2:

Ну, иногда для такого кода, который цитирует пользователь310850, есть веская причина

  1. не все веб-сайты находятся в Сети, некоторые из них являются внутренними корпоративными веб-сайтами

  2. Некоторые, если не большинство крупных компаний, все еще используют IE 6 в качестве стандартного браузера

Я бы использовал обработчик событий выгрузки. Я предполагаю, что jquery хорош

 $(window).unload(function() {
  //your code here
});