随着移动互联网的迅猛发展,越来越多的用户选择使用移动端浏览器访问网页。当用户访问一个网站的pc端页面的时候,往往是非常影响用户体验的。我们希望当用户使用移动端浏览器访问我们的pc端网站的时候,自动跳转到对应的wap页面。本文主要介绍两种方法,分别在服务端和客户端判断是否为移动端访问并跳转。废话少说,上代码!
一、服务端判断 Java代码如下:
package com.ky620.util; import java.util.regex.Matcher; import java.util.regex.Pattern; public class CheckMobile { // \b 是单词边界(连着的两个(字母字符 与 非字母字符) 之间的逻辑上的间隔), // 字符串在编译时会被转码一次,所以是 "\\b" // \B 是单词内部逻辑间隔(连着的两个字母字符之间的逻辑上的间隔) static String phoneReg = "\\b(ip(hone|od)|android|opera m(ob|in)i" +"|windows (phone|ce)|blackberry" +"|s(ymbian|eries60|amsung)|p(laybook|alm|rofile/midp" +"|laystation portable)|nokia|fennec|htc[-_]" +"|mobile|up.browser|[1-4][0-9]{2}x[1-4][0-9]{2})\\b"; static String tableReg = "\\b(ipad|tablet|(Nexus 7)|up.browser" +"|[1-4][0-9]{2}x[1-4][0-9]{2})\\b"; //移动设备正则匹配:手机端、平板 static Pattern phonePat = Pattern.compile(phoneReg, Pattern.CASE_INSENSITIVE); static Pattern tablePat = Pattern.compile(tableReg, Pattern.CASE_INSENSITIVE); /** * 检测是否是移动设备访问 * * @Title: check * @Date : 2014-7-7 下午01:29:07 * @param userAgent 浏览器标识 * @return true:移动设备接入,false:pc端接入 */ public static boolean check(String userAgent){ if(null == userAgent){ userAgent = ""; } // 匹配 Matcher matcherPhone = phonePat.matcher(userAgent); Matcher matcherTable = tablePat.matcher(userAgent); if(matcherPhone.find() || matcherTable.find()){ return true; } else { return false; } } }
二、移动端判断 JavaScript代码如下:
function checkMobile(){ var isiPad = navigator.userAgent.match(/iPad/i) != null; if(isiPad){ return false; } var isMobile=navigator.userAgent.match(/iphone|android|phone|mobile|wap|netfront|x11|java|opera mobi|opera mini|ucweb|windows ce|symbian|symbianos|series|webos|sony|blackberry|dopod|nokia|samsung|palmsource|xda|pieplus|meizu|midp|cldc|motorola|foma|docomo|up.browser|up.link|blazer|helio|hosin|huawei|novarra|coolpad|webos|techfaith|palmsource|alcatel|amoi|ktouch|nexian|ericsson|philips|sagem|wellcom|bunjalloo|maui|smartphone|iemobile|spice|bird|zte-|longcos|pantech|gionee|portalmmm|jig browser|hiptop|benq|haier|^lct|320x320|240x320|176x220/i)!= null; if(isMobile){ return true; } return false; }
举个栗子:当用户使用移动端访问这个页面 http://www.ky620.com/info/253556 时,将会自动跳转到 http://wap.ky620.com/info/253556 。
相关推荐
javascript判断是否移动端访问跳转到手机网址代码
几种判断设备是否是移动端还是pc端,然后在进行是否跳转页面,达到匹配的效果
不想通过CSS自适应在PC端和移动端分别显示不同的样式,那么只能通过在移动端访问PC端网页时跳转到对应的移动端网页了,那么怎么跳转呢,网上也有很多文章说明,以下实现思路经过小编测试过,放心使用。 1.效果图 PC...
vue跳转不同页面的多种方法 1:router-link跳转 <!-- 直接跳转 --> <button>点击跳转2</button> <!-- 带参数跳转 --> <button>点击跳转1</button> <button>...
如果函数判断当前为移动端访问,那么就会使用location.replace方法进行页面跳转。这种实现方式的灵活性很高,可以在不同页面灵活调用,根据访问设备的不同返回不同的页面。 在项目实施中,比如“咖啡之翼”项目,...
修改需要跳转的目标移动端网址,代码添加到电脑端页面,识别设备自动跳转!非常方便
网站自动跳转到移动端的核心是通过检测用户使用的浏览器类型来判断其是否为移动设备,并据此进行重定向。实现这一功能的主要方法是检查`HTTP_USER_AGENT`头中的信息。`HTTP_USER_AGENT`是一个包含客户端软件相关信息...
// 如果是移动端访问,跳转到移动端页面 window.location.href = 'wap_url'; //wap_url为移动端页面的URL地址 } else { // 如果是PC端访问,跳转到PC端页面 window.location.href = 'pc_url'; //pc_url为PC端...
"JS判断手机端和PC端后跳转对应页面"这个话题就是关于如何使用JavaScript来检测用户的设备类型,并据此决定加载哪个页面。下面将详细介绍这一技术的实现原理和步骤。 首先,我们可以通过检测浏览器的User Agent字符...
本文实例讲述了js判断登录与否并确定跳转页面的方法。分享给大家供大家参考。具体如下: 使用session存储,确定用户是否登录,从而确定页面跳转至哪个页面。 判断本地有无customerID: function jumpTo(p, url) { ...
js判断移动端APP是否安装 如果安装就打开APP 没有安装就提示下载
标题“自动判断IP跳转到相应城市”涉及的是网络服务器技术中的地理位置定位和动态路由功能。这个系统的主要目的是根据用户访问的IP地址自动将其重定向到与其所在城市相对应的特定网页或服务。这一功能在许多网站和...
wap浏览自动跳转到wap页面的js代码主要涉及了在网页上实现自动检测用户设备类型,并根据检测结果将用户重定向到wap版本的网页。这种功能对于wap浏览体验来说是非常关键的,因为wap页面是专门为移动设备设计的,提供...
解决思路1: 在跳转到登录页面之前要将当前访问页面的url保存到cookie里面,登录验证授权通过后,从cookie中取出这个url值,跳转到该url指定的页面。具体实现 我现在的程序是基于ThinkPHP框架的,我们会有一个父类...
在JavaScript(JS)中,实现从网页跳转到对应手机页面的功能是一项常见的需求,尤其是在响应式网站设计或者移动优先的开发策略中。本教程将基于提供的`mobile.js`文件,探讨如何精简地进行这样的页面跳转。我们将...
本实例主要关注的是“页面跳转”和“权限判断”两个关键知识点。 1. **页面跳转**: 页面跳转在Web应用中是相当常见的操作,它允许用户在不同的页面之间导航。在ASP.NET MVC框架中,有多种实现页面跳转的方式。一...
在网页开发中,有时我们需要根据用户的访问来源(来路)执行特定的操作,比如根据用户是从哪个搜索引擎进入网站的,或者是否直接输入网址,来进行不同的页面跳转。这可以通过JavaScript实现,因为JavaScript可以获取...
这里我们主要探讨两种常见的页面跳转方式:直接跳转和携带结果跳转,并介绍如何实现这两种方法。这两种方式都是基于Intent对象来完成的。 首先,我们来看直接跳转,也称为无结果跳转。在Android中,你可以使用`...
在前端开发中,有时我们需要根据用户使用的设备类型来提供不同的界面体验,这通常涉及到判断设备是PC还是移动端。Vue.js,作为一个轻量级且强大的前端框架,提供了多种方式来实现这种设备判断。本文将详细介绍如何在...