TP5框架页面跳转样式操作示例

 更新时间:2020年04月05日 09:35:02   作者:Anwug!  
这篇文章主要介绍了TP5框架页面跳转样式操作,结合实例形式分析了TP5框架移动设备支持及页面跳转样式定义相关操作技巧,需要的朋友可以参考下

本文实例讲述了TP5框架页面跳转样式操作。分享给大家供大家参考,具体如下:

1、效果图

2、上干货

为了增加对移动设备的支持,在  /application/common.php加入以下函数:

function isMobile()
{ 
  if (isset ($_SERVER['HTTP_X_WAP_PROFILE']))
  {
    return true;
  } 
  if (isset ($_SERVER['HTTP_VIA']))
  { 
    return stristr($_SERVER['HTTP_VIA'], "wap") ? true : false;
  } 
  if (isset ($_SERVER['HTTP_USER_AGENT']))
  {
    $clientkeywords = array ('nokia',
      'sony',
      'ericsson',
      'mot',
      'samsung',
      'htc',
      'sgh',
      'lg',
      'sharp',
      'sie-',
      'philips',
      'panasonic',
      'alcatel',
      'lenovo',
      'iphone',
      'ipod',
      'blackberry',
      'meizu',
      'android',
      'netfront',
      'symbian',
      'ucweb',
      'windowsce',
      'palm',
      'operamini',
      'operamobi',
      'openwave',
      'nexusone',
      'cldc',
      'midp',
      'wap',
      'mobile'
      ); 
    if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT'])))
    {
      return true;
    } 
  } 
  if (isset ($_SERVER['HTTP_ACCEPT']))
  { 
    if ((strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') !== false) && (strpos($_SERVER['HTTP_ACCEPT'], 'text/html') === false || (strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') < strpos($_SERVER['HTTP_ACCEPT'], 'text/html'))))
    {
      return true;
    } 
  } 
  return false;
}

替换模板(  找到文件 /thinkphp/tpl/dispatch_jump.tpl  ,删除里面的全部代码,加入下面代码)

{__NOLAYOUT__}<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=0.5, maximum-scale=2.0, user-scalable=yes" /> 
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>跳转提示</title>
  <?php if(isMobile()==true){?>
  <style type="text/css">
    body, h1, h2, p,dl,dd,dt{margin: 0;padding: 0;font: 15px/1.5 微软雅黑,tahoma,arial;}
    body{background:#efefef;}
    h1, h2, h3, h4, h5, h6 {font-size: 100%;cursor:default;}
    ul, ol {list-style: none outside none;}
    a {text-decoration: none;color:#447BC4}
    a:hover {text-decoration: underline;}
    .ip-attack{width:100%; margin:200px auto 0;}
    .ip-attack dl{ background:#fff; padding:30px; border-radius:10px;border: 1px solid #CDCDCD;-webkit-box-shadow: 0 0 8px #CDCDCD;-moz-box-shadow: 0 0 8px #cdcdcd;box-shadow: 0 0 8px #CDCDCD;}
    .ip-attack dt{text-align:center;}
    .ip-attack dd{font-size:16px; color:#333; text-align:center;}
    .tips{text-align:center; font-size:14px; line-height:50px; color:#999;}
  </style>
<?php }else{ ?>
<style type="text/css">
    body, h1, h2, p,dl,dd,dt{margin: 0;padding: 0;font: 15px/1.5 微软雅黑,tahoma,arial;}
    body{background:#efefef;}
    h1, h2, h3, h4, h5, h6 {font-size: 100%;cursor:default;}
    ul, ol {list-style: none outside none;}
    a {text-decoration: none;color:#447BC4}
    a:hover {text-decoration: underline;}
    .ip-attack{width:600px; margin:200px auto 0;}
    .ip-attack dl{ background:#fff; padding:30px; border-radius:10px;border: 1px solid #CDCDCD;-webkit-box-shadow: 0 0 8px #CDCDCD;-moz-box-shadow: 0 0 8px #cdcdcd;box-shadow: 0 0 8px #CDCDCD;}
    .ip-attack dt{text-align:center;}
    .ip-attack dd{font-size:16px; color:#333; text-align:center;}
    .tips{text-align:center; font-size:14px; line-height:50px; color:#999;}
  </style>
<?php }?>
  
</head>
<body>
  <div class="ip-attack"><dl>
    <?php switch ($code) {?>
      <?php case 1:?>
      <dt style="color: green"><?php echo(strip_tags($msg));?></dt>
      <?php break;?>
      <?php case 0:?>
      <dt style="color: red"><?php echo(strip_tags($msg));?></dt>
      <?php break;?>
    <?php } ?>
    <br>
    <dt>
      页面自动 <a id="href" href="<?php echo($url);?>" rel="external nofollow" >跳转</a> 等待时间: <b id="wait"><?php echo($wait);?></b>
    </dt></dl>
  </div>
  <script type="text/javascript">
    (function(){
      var wait = document.getElementById('wait'),
        href = document.getElementById('href').href;
      var interval = setInterval(function(){
        var time = --wait.innerHTML;
        if(time <= 0) {
          location.href = href;
          clearInterval(interval);
        };
      }, 1000);
    })();
  </script>
</body>
</html>

3、over over over!!!

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

相关文章

  • 老生常谈ThinkPHP中的行为扩展和插件(推荐)

    老生常谈ThinkPHP中的行为扩展和插件(推荐)

    下面小编就为大家带来一篇老生常谈ThinkPHP中的行为扩展和插件(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • Laravel Eloquent分表方法并使用模型关联的实现

    Laravel Eloquent分表方法并使用模型关联的实现

    这篇文章主要介绍了Laravel Eloquent分表方法并使用模型关联的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • ThinkPHP中类的构造函数_construct()与_initialize()的区别详解

    ThinkPHP中类的构造函数_construct()与_initialize()的区别详解

    这篇文章主要介绍了ThinkPHP中类的构造函数_construct()与_initialize()的区别,文中介绍的非常详细,相信对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。
    2017-03-03
  • PHP反射机制案例讲解

    PHP反射机制案例讲解

    这篇文章主要介绍了PHP反射机制案例讲解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-07-07
  • Yii框架日志记录Logging操作示例

    Yii框架日志记录Logging操作示例

    这篇文章主要介绍了Yii框架日志记录Logging操作,结合实例形式分析了Yii框架日志记录Logging模块相关配置与简单使用技巧,需要的朋友可以参考下
    2018-07-07
  • php+mysql开源XNA 聚合程序发布 下载

    php+mysql开源XNA 聚合程序发布 下载

    php+mysql开源XNA 聚合程序发布 下载...
    2007-07-07
  • 使用PHP抓取微博数据实现demo及原理解析

    使用PHP抓取微博数据实现demo及原理解析

    这篇文章主要为大家介绍了使用PHP抓取微博数据实现demo及原理解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • PHP+Ajax+JS实现多图上传

    PHP+Ajax+JS实现多图上传

    这篇文章主要为大家详细介绍了PHP+Ajax+JS实现多图上传的相关资料,具有一定的参考价值,感兴趣的朋友可以参考一下
    2016-05-05
  • 关于ThinkPHP中的异常处理详解

    关于ThinkPHP中的异常处理详解

    和PHP默认的异常处理不同,ThinkPHP抛出的不是单纯的错误信息,而是一个人性化的错误页面,下面这篇文章主要给大家介绍了关于ThinkPHP中异常处理的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2018-05-05
  • php设计模式之单例模式用法经典示例分析

    php设计模式之单例模式用法经典示例分析

    这篇文章主要介绍了php设计模式之单例模式用法,结合具体实例形式分析了php单例模式的概念、原理、定义及使用方法,需要的朋友可以参考下
    2019-09-09

最新评论