【发布时间】:2015-02-11 02:25:45
【问题描述】:
我使用此代码将使用移动/平板设备的用户重定向到移动版本 但我想当他们点击“转到完整版”时忽略第一个 if。 当前,当用户单击该链接时,他们会再次重定向到移动版本。
if( /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) ) {
window.location.href = "http://m.website.com";
}
if($('#ClickFull').click(function()){
// i don't know what can ignore the above if.
}
我想我应该把我的代码放在一个函数中,如果我是对的,怎么做?
【问题讨论】:
-
设置一个cookie。读取
if语句中的cookie。如果 cookie 未设置为显示整页的任何值,则执行window.location.href,否则不执行任何操作。 -
您可以在他们点击完整站点时设置 cookie,并且您可以在第一个 if 中检查该 cookie。就这么简单。
-
设置一个cookie。读取
if语句中的cookie。如果 cookie 未设置为显示整页的值,则执行window.location.href,否则不执行任何操作。 -
只需将查询字符串附加到 url,例如 ?m=false 当有人单击完整版链接时,然后将其添加到您的条件以进行移动设备检查,例如 if( /Android| webOS|iP.... && !location.search.match(/m=false/gi) ) { ... }
-
基于用户代理的重定向是一件可怕的事情。使用“javascript 媒体查询”来检查浏览器的功能:developer.mozilla.org/en-US/docs/Web/API/Window.matchMedia
标签: javascript jquery redirect execute