我搜索了很多帖子,发现了很多将iOS设备重定向到不同页面的脚本。但我不想改变整个页面,只需要一个链接。
整个网站(www.example.com)适用于iOS设备,并包含一个指向基于Flash的应用程序页面的链接(位于不同的主机上 - app.example.com)。此特定应用程序具有可在iPad上使用的iOS版本。单击链接后,我只希望将计算机用户发送到Flash应用程序页面,并将iPad用户发送到一个页面(在www.上),告诉他们有关iOS应用程序的信息。
我想象的是:
如果用户在iPad上,请在头部使用iOS检测脚本将'isiPad'变量设置为'true'。然后在身体的东西,如:
如果'isiPad'=真,那么
<a href="http://www.example.com/useiOSapp.html"> Run the App </a>
否则
<a href="http://app.example.com/flash-app-page.html">Run the App</a>
答案 0 :(得分:2)
<a id="myLink" href="">Run App</a>
$(document).ready(function($){
var deviceAgent = navigator.userAgent.toLowerCase();
var agentID = deviceAgent.match(/(iphone|ipod|ipad)/);
if (agentID) {
$('#myLink').attr('href', 'http://example.com/useiOSapp.html');
}else
{
$('#myLink').attr('href', 'http://example.com/flash-app-page.html');
}
});
答案 1 :(得分:1)
您可以通过htaccess运行并重写URL。
RewriteCond %{HTTP_USER_AGENT} ^.*iPad.*$
RewriteRule ^http://example.com/flash-app-page.html$ http://example.com/useiOSapp.html [R=301]
或者,您可以将其声明为js var:
var isiPad = navigator.userAgent.match(/iPad/i) != null;
然后准备调用一个重写url的函数... jquery版本:
$(document).ready(function(){
if(isiPad)
{
$('#link_id').attr('href', 'http://example.com/useiOSapp.html');
}
});
(假设您还为链接指定了“link_id”ID)