百度判断手机终端并自动跳转js代码及使用实例_javascript技巧

百度目前为站长提供了判断手机终端类型并自动实现跳转的js脚本,极大的方便了广大站长及web开发人员。其js脚本的使用方法极其简单。

复制代码 代码如下:

<script src="http://siteapp.baidu.com/static/webappservice/uaredirect.js" type="text/javascript"></script>
<SCRIPT type=text/javascript>uaredirect("手机站","WEB站");</SCRIPT>

其中最为核心的js脚本格式化代码如下所示:

复制代码 代码如下:

function uaredirect(f) {
    try {
        if (document.getElementById("bdmark") != null) {
            return
        }
        var b = false;
        if (arguments[1]) {
            var e = window.location.host;
            var a = window.location.href;
            if (isSubdomain(arguments[1], e) == 1) {
                f = f + "/#m/" + a;
                b = true
            } else {
                if (isSubdomain(arguments[1], e) == 2) {
                    f = f + "/#m/" + a;
                    b = true
                } else {
                    f = a;
                    b = false
                }
            }
        } else {
            b = true
        }
        if (b) {
            var c = window.location.hash;
            if (!c.match("fromapp")) {
                if ((navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i))) {
                    location.replace(f)
                }
            }
        }
    } catch(d) {}
}
function isSubdomain(c, d) {
    this.getdomain = function(f) {
        var e = f.indexOf("://");
        if (e > 0) {
            var h = f.substr(e + 3)
        } else {
            var h = f
        }
        var g = /^www\./;
        if (g.test(h)) {
            h = h.substr(4)
        }
        return h
    };
    if (c == d) {
        return 1
    } else {
        var c = this.getdomain(c);
        var b = this.getdomain(d);
        if (c == b) {
            return 1
        } else {
            c = c.replace(".", "\\.");
            var a = new RegExp("\\." + c + "$");
            if (b.match(a)) {
                return 2
            } else {
                return 0
            }
        }
    }
};

建议站长及web开发人员使用如下压缩后的js脚本

复制代码 代码如下:

function uaredirect(f){try{if(document.getElementById("bdmark")!=null){return}var b=false;if(arguments[1]){var e=window.location.host;var a=window.location.href;if(isSubdomain(arguments[1],e)==1){f=f+"/#m/"+a;b=true}else{if(isSubdomain(arguments[1],e)==2){f=f+"/#m/"+a;b=true}else{f=a;b=false}}}else{b=true}if(b){var c=window.location.hash;if(!c.match("fromapp")){if((navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i))){location.replace(f)}}}}catch(d){}}function isSubdomain(c,d){this.getdomain=function(f){var e=f.indexOf("://");if(e>0){var h=f.substr(e+3)}else{var h=f}var g=/^www\./;if(g.test(h)){h=h.substr(4)}return h};if(c==d){return 1}else{var c=this.getdomain(c);var b=this.getdomain(d);if(c==b){return 1}else{c=c.replace(".","\\.");var a=new RegExp("\\."+c+"$");if(b.match(a)){return 2}else{return 0}}}};

PS:在此小编为大家推荐几款javascript格式化美化与压缩工具,类似上述的百度跳转代码压缩与格式化就可使用下述工具实现:

C语言风格/HTML/CSS/json代码格式化美化工具:
http://tools.jb51.net/code/ccode_html_css_json

在线JavaScript代码美化、格式化工具:
http://tools.jb51.net/code/js

JavaScript代码美化/压缩/格式化/加密工具:
http://tools.jb51.net/code/jscompress

JavaScript在线压缩工具:
http://tools.jb51.net/code/js_yasuo

JavaScript在线格式化工具(基于beautify.js插件):
http://tools.jb51.net/code/js_beautify

时间: 2024-12-29 19:36:26

百度判断手机终端并自动跳转js代码及使用实例_javascript技巧的相关文章

JS判断form内所有表单是否为空的简单实例_javascript技巧

如下所示: function checkForm(){ var input_cart=document.getElementsByTagName_r("INPUT"); for(var i=0; i<input_cart.length; i++) { if(input_cart[i].value==""||input_cart[i].value==null) { alert("信息不能为空!"); input_cart[i].focus()

js判断ie方法集锦(含正则)代码短小经典[原创]_javascript技巧

是否是Opera: [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] 是否是IE: [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] 是否是ie7: 复制代码 代码如下: <script> (is_ie && /msie 7\.0/i.test(navigator.userAgent));  </script> [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] javascri

pc-如何实现手机访问时自动跳转到手机网站上,而不是PC网站呢?独立的域名以及空间

问题描述 如何实现手机访问时自动跳转到手机网站上,而不是PC网站呢?独立的域名以及空间 重新按照移动端的设计规则建一个移动网站,这样建成的网站将和原 PC 站相互独立,比如 新浪网 /www.sina.com.cn 和 手机新浪网 / 3g.sina.com.cn 解决方案 不是自动识别 而是css全部是相对布局 而不是绝对布局吧 解决方案二: Web_JavaScript_实现:手机访问网站,自动跳转到其网站手机版:手机访问pc网站自动跳转手机端网站代码手机站跳转代码(网站打开自动跳转到手机网

Session过期后自动跳转到登录页面的实例代码_java

最近做了一个项目其中有需求,要实现自动登录功能,通过查阅相关资料,打算用session监听来做,下面给大家列出了配置监听器的方法: 1.在项目的web.xml文件中添加如下代码: <!--添加Session监听器--> <listener> <listener-class> 监听器路径 </listener-class> </listener> 2.编写java类. public class SessionListener implements

Android手机号码输入框(满11位自动跳到下个输入框)实例代码

废话不多说了,直接给大家贴代码了,具体代码如下所示: package com.jixiong.teen.view; import android.content.Context; import android.text.Editable; import android.text.Selection; import android.text.TextWatcher; import android.util.AttributeSet; import android.widget.EditText;

判断文件是否正在被使用的JS代码

 这篇文章主要介绍了判断文件是否正在被使用的JS代码,有需要的朋友可以参考一下 代码如下: //判断文件是否正在被使用    function FileINUse(filename:String):boolean; var   usein:file; begin   result:=false;   assignfile(usein,FileName);   try     reset(Usein);   except     on E:EInOutError do     begin    

根据user-agent判断蜘蛛代码黑帽跳转代码(js版与php版本)_javascript技巧

黑帽seo手段中有一个大家都在用的技巧,在服务端判断 客户端浏览器的user-agent然后做进一步操作, 网上一直都有人在用 这个代码 先是一个js代码 判断网站访客来路 如果是搜索引擎来的 就跳转 如果是直接访问则不变化 这段代码是从网上找来的 已经很久了 感谢原作者 <script language="javascript"> var pattern = /google/gi; var pattern1= /yahoo/gi; var keyValue=escape(

PHP未登录自动跳转到登录页面_php实例

下面一段代码给大家分享php未登录自动跳转到登录页面,具体代码如下所示: <?php namespace Home\Controller; use Think\Controller; class BaseController extends Controller{ //基础信息,判断登陆 public function __construct(){ parent::__construct(); /*if(!session('?user')){ redirect(U('Home/Login/ind

asp.net网站首页根据IP自动跳转指定页面的示例_实用技巧

对于大中型网站,为了增强用户体验,往往需要根据不同城市站点的用户推送或展现相应个性化的内容,如对于一些大型门户网站的新闻会有城市站点的功能,如果没有设置相应的城市站点,默认就是根据用户访问的IP地址的所在城市自动设置.本文主要通过自定义扩展IHttpModule接口,考虑到性能IP数据库主要采用QQwry纯真IP数据库,主要实现根据IP地址或地址段或IP所在城市进行自动跳转到指定页面的功能(支持Nginx作为前端反向代理服务器),该WebsiteSkip组件核心代码如下: 复制代码 代码如下: