Javascript 如何仅更改移动浏览器的链接?

Javascript 如何仅更改移动浏览器的链接?,javascript,jquery,html,Javascript,Jquery,Html,我很难找到一个方法来做这件事。我被告知我可以使用JavaScript或jQuery。 这是我的 脚本: <script type="text/javascript"> if((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i))) { document.getElementById('mylink').href = "http://google.com/"; } </scr

我很难找到一个方法来做这件事。我被告知我可以使用JavaScript或jQuery。 这是我的

脚本:

<script type="text/javascript">
if((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i))) 
{
 document.getElementById('mylink').href = "http://google.com/";
}
</script>

if((navigator.userAgent.match(/iPhone/i))| |(navigator.userAgent.match(/iPod/i)))
{
document.getElementById('mylink')。href=”http://google.com/";
}
链接:


我甚至试过:

<a href="#" id="#mylink">


我想让链接转到任何其他浏览器上的网站,但如果你在iPhone上,则转到iTunes链接。如果有人能帮我解决这个问题,我将不胜感激。

有了jQuery,您可以使用

$(document).ready(function() {
   if((navigator.userAgent.match(/iPhone|iPod/))) {
       $("#mylink").prop("href", <istore link>)  
   } else {
       $("#mylink").prop("href", "http://google.com")
   }
});
$(文档).ready(函数(){
if((navigator.userAgent.match(/iPhone | iPod/)){
$(“#mylink”).prop(“href”,)
}否则{
$(“#mylink”).prop(“href”http://google.com")
}
});
你的锚定标签是什么

<a href="#" id="mylink"></a>

我没有测试过这个,但应该是正确的

编辑:
虽然我输入了足够的basic来解决这个问题。

像这样检测手机:

 var isMobile = navigator.userAgent.match(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/);

if(isMobile) {

   document.getElementById('mylink').href = "http://google.com/";

}

尝试将标记文档就绪部分与当前代码相结合。您还可以通过选择firefox和chrome用户代理在您的设备上进行测试,JavaScript在桌面浏览器中更容易调试:)

不建议使用浏览器检测,最好通过css媒体查询使用大小检测。引导可能对您有很大帮助:

类仅可见电话:。可见xs 类仅隐藏电话:。隐藏的xs

使用url了解更多信息

<!--Only Phones-->
<a href="#" class="visible-xs" id="#mylink">

<!--Anything else-->
<a href="#" class="hidden-xs" id="#mylink">

您的脚本试图访问尚未加载的DOM元素

<script>
  if((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i))) 
  {
   document.getElementById('mylink').href = "http://google.com/";
  }
</script>

<a href="#" id="mylink">

在userAgent.match('iPhone')中尝试此操作,而不是/并且如果您有此脚本,则它应该位于html中的a-link标记下方,或者最好将其放入函数并在body的onload函数或jquery ready函数中调用它,这两种方法都应该可以工作。。。其他一切都好。。。谢谢…

你把剧本放在哪里了?链接之前还是之后?脚本放在链接之前?是否应该放在标题中?@DallasClymer后一个代码应该完全替换脚本标记。当然,你可以(也应该)将代码存储在一个单独的JS文件中。我对我制作的文档有有限的访问权限,目前我无法为此制作新的css或JS文件。还有其他选择吗?@DallasClymer然后简单地用我的脚本标签替换你的脚本标签。我做了,什么也没做。
<script>
  if((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i))) 
  {
   document.getElementById('mylink').href = "http://google.com/";
  }
</script>

<a href="#" id="mylink">