繁体   English   中英

基于屏幕宽度的 URL 重定向

[英]URL Redirect Based on Screen Width

我正在寻找的很简单,一种在屏幕或窗口宽度小于 950 像素时自动将用户重定向到不同 URL 的方法。

我不想使用“刷新”,因为它不被推荐,我也不想使用“用户代理”,因为从长远来看,它对我来说不太可靠,我不想担心更新这个。

这是我在各处看到的为此目的而建议的脚本,但由于某种原因它没有做任何事情:

<script type="text/javascript">
  <!--
  if (screen.width <= 950) {
    window.location = "https://www.google.com/";
  }
  //-->
</script>

我也尝试过所有这些变体,但没有成功:

window.location
document.location
window.location.href
document.location.href

我还尝试将它作为 Head 标签之后甚至 Doctype 之前的第一件事。 没发生什么事...

如果您必须使用Javascript,请尝试以下操作:

<script type="text/javascript">
   function redirect() {
   if (screen.width <= 950) {
      window.location = "https://www.google.com/";
   }

并在你的身体添加:

<body onload="setTimeout('redirect()', 300)">

这将在页面加载后300 ms后重定向用户,这样您就可以确保屏幕width可用。

你可以更好地使用JQUERY ......

// Returns width of browser viewport
$( window ).width();

请参阅: http//api.jquery.com/width/

例:

<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script>
$(document).ready(function(){
  if($(window).width() <= 950) {
window.location = "https://www.google.com/";
}
});
</script>
</head>
<body>
<p>Website</p>
</body>
</html>

我正在回答我自己的问题,因为我最近找到了一个比@Finduilas提供的更令人满意的解决方案。

此解决方案不仅可以在正常情况下重定向您,还可以在调整窗口大小时来回重定向。

更好! 当您从横向切换到纵向时,它会在移动设备中来回重定向,反之亦然。

<script type="text/javascript">
    $(window).on('load resize',function(){
        if($(window).width() < 950){
            window.location = "https://www.google.com"
        }
    });
</script>
<script type="text/javascript">
  <!--
  if (screen.width <= 950) {
    window.location = "https://www.google.com/";
  }
  //-->
</script>

<!-- you forgot to add window.location.replace("https://www.google.com/"); and yours is a little wrong-->
<script type="text/javascript">
  <!--
  if (screen.width <= 950) {
    window.location.replace("https://www.google.com/");
  }
  //-->
</script>
USE THIS ON TOP OF THE HEAD TAG
<script >
  window.addEventListener('resize', function() {
    if (window.innerWidth <= "Your desired screen width") {
        window.location.href = "redirect loacation"; 
    }
});
</script>
</head>
<body > 

这些脚本都不起作用。 我试过了所有这些。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM