Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单击链接加载移动站点,但也保留url路径以加载精确的并行页面_Javascript_Html - Fatal编程技术网

Javascript 单击链接加载移动站点,但也保留url路径以加载精确的并行页面

Javascript 单击链接加载移动站点,但也保留url路径以加载精确的并行页面,javascript,html,Javascript,Html,我试图找到一个类似的调查,但什么也没找到。我最近在m。并添加了我发现的一个片段,该片段将显示一个链接,通过查看正在使用的设备,从常规或移动设备导航到移动站点。那很好。但我想补充的是,当你点击链接时,它会保留你当前所在的页面,但只会为你加载备用设备版本,所以你不需要研究当你被发送到其他网站版本时你在寻找什么 因此,如果您处于启用状态,并单击链接,它将加载。基本上只是交换m。与档案馆。我目前在href中有确切的URL,可以转到根目录,但我希望它可以查看您所在的位置,并在链接中使用该URL。下面是我目

我试图找到一个类似的调查,但什么也没找到。我最近在m。并添加了我发现的一个片段,该片段将显示一个链接,通过查看正在使用的设备,从常规或移动设备导航到移动站点。那很好。但我想补充的是,当你点击链接时,它会保留你当前所在的页面,但只会为你加载备用设备版本,所以你不需要研究当你被发送到其他网站版本时你在寻找什么

因此,如果您处于启用状态,并单击链接,它将加载。基本上只是交换m。与档案馆。我目前在href中有确切的URL,可以转到根目录,但我希望它可以查看您所在的位置,并在链接中使用该URL。下面是我目前在移动站点页面顶部的代码。主站点类似,但在If-Else中进行了调整

<script type="text/javascript">
    var isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);
    var element = document.getElementById('mobile');
    if (isMobile) {
        element.innerHTML = "";
    } else {
        element.innerHTML = "<center>You are using a Desktop computer. Go <a href='https://archive.retroreprints.com'>HERE</a> to view the site optimized for your device.</center>";
    }
</script>

非常感谢你的帮助

我不确定这是否是你想要的

我们可以获取URL并替换主机名吗

<script type="text/javascript">
  var isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);
  var element = document.getElementById('mobile');
  var loc = window.location.href
  if (isMobile && loc.contains('archive.retroreprints')) {
    let redirectURL = loc.replace('archive.retroreprints', 'm.retroreprints');
    element.innerHTML ='<center>You are using a Desktop computer. Go <a href='+redirectURL+'>HERE</a> to view the site optimized for your device.</center>';
  } else if(loc.contains('m.retroreprints')) {
    let redirectURL = loc.replace('m.retroreprints', 'archive.retroreprints');
    element.innerHTML ='<center>You are using a Desktop computer. Go <a href='+redirectURL+'>HERE</a> to view the site optimized for your device.</center>';
  }
<script>

最后,在需要显示的消息中添加字符串loc?

您可以使用如下重定向:

var isMobile=/iPhone | iPad | iPod | Android/i.testnavigator.userAgent; 如果是移动的{ window.location.href=https://mobile.mysite.com; }否则{ window.location.href=https://desktop.mysite.com; }
我已经有这个部分了。我想让它查看当前页面,并加载并行页面。我不希望它是重定向中的静态url。然后您可以切换到使用响应式设计。如今,拥有单独的移动/桌面站点不是一件好事,而单独的URL就是这样一个问题。@Aaron很抱歉,如果答案没有意义,我认为要求只是用正确的主机名和路径更新消息中的链接,以便在点击链接时将用户路由回任何一个桌面/移动站点。您的脚本将关闭,因为.replace函数将更改url的字符串,并可用于在单击时更改目标url。我今天早上几个小时来一直面临的问题是,当我使用一个变量尝试拉入当前加载的url时,.replace似乎什么都没做。当我将最终产品变量放入IF ELSE语句中的href行时,它只会不断重新加载当前页面。use标记,