Как сделать чтоб при нажатии клавиши СКАЧАТЬ на одной главной странице лендинг перенаправляло к заголовку Проги для IOS или Проги для WINDOWS?

Как реализовать нажатие клавиши СКАЧАТЬ, чтобы браузер понимал если это мобильное устройство то переходило на лендинг странице к заголовку Проги для IOS, а если зашли с компьютерного браузера то при нажатии на СКАЧАТЬ перенаправляло к заголовку Проги для WINDOWS?


Ответы (1 шт):

Автор решения: Alexandr Kiseloy

Нужно с помощью JS по заголовкам определить браузер и систему при клике.

function getOS() {
  var userAgent = window.navigator.userAgent,
      platform = window.navigator?.userAgentData?.platform ?? window.navigator.platform,
      macosPlatforms = ['Macintosh', 'MacIntel', 'MacPPC', 'Mac68K'],
      windowsPlatforms = ['Win32', 'Win64', 'Windows', 'WinCE'],
      iosPlatforms = ['iPhone', 'iPad', 'iPod'],
      os = null;

  if (macosPlatforms.indexOf(platform) !== -1) {
    os = 'Mac OS';
  } else if (iosPlatforms.indexOf(platform) !== -1) {
    os = 'iOS';
  } else if (windowsPlatforms.indexOf(platform) !== -1) {
    os = 'Windows';
  } else if (/Android/.test(userAgent)) {
    os = 'Android';
  } else if (!os && /Linux/.test(platform)) {
    os = 'Linux';
  }

  return os;
}

function handlerClickDownload(e) {
  e.preventDefault();
  switch(getOS()) {
    case 'iOS':
      window.location.href = 'https://IOS_PATH.COM';
      break;
    case 'Android':
      window.location.href = 'https://ANDROID_PATH.COM';
      break;
     default:
      window.location.href = e.target.href;
     break;
  }
}
<a href="https://DESCTOP_PATH.COM" onclick="handlerClickDownload">Download</a>

Ну или при загрузке страницы находить эту ссылку, проверять ОС и подменять атрибут href

→ Ссылка