`
jialisoft126
  • 浏览: 34467 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

织梦DedeCMS提示信息框的修改,修改ShowMsg方法函数

阅读更多

织梦DedeCMS系统,处处都在用到提示信息,但是这个提示框,前台后台一层不变,太死板了,可能有很多人都有过去修改它的想法,只是苦于不知道去哪里改。今天我就来说说这个吧,DedeCMS的所有提示信息都是用ShowMsg方法进行处理的,这个函数存放在/include/common.func.php  源代码如下:

  1. /**
  2.  *  短消息函数,可以在某个动作处理后友好的提示信息
  3.  *
  4.  * @param     string  $msg      消息提示信息
  5.  * @param     string  $gourl    跳转地址
  6.  * @param     int     $onlymsg  仅显示信息
  7.  * @param     int     $limittime  限制时间
  8.  * @return    void
  9.  */
  10. function ShowMsg($msg, $gourl, $onlymsg=0, $limittime=0)
  11.  
  12. {
  13.     if(empty($GLOBALS['cfg_plus_dir'])) $GLOBALS['cfg_plus_dir'] = '..';
  14.     $htmlhead  = "<html>\r\n<head>\r\n<title>DedeCMS提示信息</title>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\" />\r\n";
  15.     $htmlhead .= "<base target='_self'/>\r\n<style>div{line-height:160%;}</style></head>\r\n<body leftmargin='0' topmargin='0' bgcolor='#FFFFFF'>".(isset($GLOBALS['ucsynlogin']) ? $GLOBALS['ucsynlogin'] :'')."\r\n<center>\r\n<script>\r\n";
  16.     $htmlfoot  = "</script>\r\n</center>\r\n</body>\r\n</html>\r\n";
  17.     $litime = ($limittime==0 ? 1000 : $limittime);
  18.     $func = '';
  19.  
  20.     if($gourl=='-1')
  21.     {
  22.         if($limittime==0) $litime = 5000;
  23.         $gourl = "javascript:history.go(-1);";
  24.     }
  25.     if($gourl=='' || $onlymsg==1)
  26.     {
  27.         $msg = "<script>alert(\"".str_replace("\"","“",$msg)."\");</script>";
  28.     }
  29.     else
  30.     {
  31.         //当网址为:close::objname 时, 关闭父框架的id=objname元素
  32.         if(preg_match('/close::/',$gourl))
  33.         {
  34.             $tgobj = trim(preg_replace('/close::/', '', $gourl));
  35.             $gourl = 'javascript:;';
  36.             $func .="window.parent.document.getElementById('{$tgobj}').style.display='none';\r\n";
  37.         }
  38.         $func .= "      var pgo=0;
  39.       function JumpUrl(){
  40.         if(pgo==0){ location='$gourl'; pgo=1; }
  41.       }\r\n";
  42.         $rmsg = $func;
  43.         $rmsg .= "document.write(\"<br /><div style='width:450px;padding:0px;border:1px solid #DADADA;'>";
  44.         $rmsg .= "<div style='padding:6px;font-size:12px;border-bottom:1px solid #DADADA;background:#DBEEBD url({$GLOBALS['cfg_plus_dir']}/img/wbg.gif)';'><b>DedeCMS 提示信息!</b></div>\");\r\n";
  45.         $rmsg .= "document.write(\"<div style='height:130px;font-size:10pt;background:#ffffff'><br />\");\r\n";
  46.         $rmsg .= "document.write(\"".str_replace("\"","“",$msg)."\");\r\n";
  47.         $rmsg .= "document.write(\"";
  48.         
  49.         if($onlymsg==0)
  50.         {
  51.             if( $gourl != 'javascript:;' && $gourl != '')
  52.             {
  53.                 $rmsg .= "<br /><a href='{$gourl}'>如果你的浏览器没反应,请点击这里...</a>";
  54.                 $rmsg .= "<br/></div>\");\r\n";
  55.                 $rmsg .= "setTimeout('JumpUrl()',$litime);";
  56.             }
  57.             else
  58.             {
  59.                 $rmsg .= "<br/></div>\");\r\n";
  60.             }
  61.         }
  62.         else
  63.         {
  64.             $rmsg .= "<br/><br/></div>\");\r\n";
  65.         }
  66.         $msg  = $htmlhead.$rmsg.$htmlfoot;
  67.     }
  68.     echo $msg;
  69. }
 

可以看出ShowMsg有四个参数,第一个参数是提示的信息,第二个就参数是跳转的地址,如果设置为-1的话,就是返回上一个页面,第三个参数其它就是定义是用alert()弹出提示框,还是显示提示信息,第四个参数就是信息提示页面显示多久再进行跳转,默认是1秒种。修改这个提示框比较简单了,直接替换对应的文字

这个提示框的CSS也是写在内部的,如果我们需要修改,可以在这里直接修改源码,甚至我们还可以为这个ShowMsg函数增加一个参数,然后根据这个参数,显示不同的效果。

分享到:
评论

相关推荐

    PHP快速生成各种信息提示框的方法

    本文实例讲述了PHP快速生成各种信息提示框的方法。分享给大家供大家参考,具体如下: function ShowMsg($msg, $gourl, $onlymsg = 0, $limittime = 0) //系统提示信息 { /* *$msg 信息提示的内容 *$gourl 需要跳转...

    jquery验证插件,脚本验证插件

    另外还附加了$.Showmsg()、$.Hidemsg()全局弹出/关闭信息框方法以便整站有一个统一的信息提示效果【只要引入了该js文件就能调用这两个全局方法】; 当前版本外调插件可以实现文件上传检测、密码强度检测和日期控件...

    javascript的函数、创建对象、封装、属性和方法、继承

    一,function 从一开始接触到js就感觉好灵活,每个人的写法都不一样,比如一个function就有N种写法 如:function showMsg(){},var showMsg=function(){},showMsg=function(){} 似乎没有什么区别,都是一样的嘛,真...

    JavaShow

    我也下载过,不过感觉有些地方用的有些不顺手于是自己做了一个,特别加了两个功能showmsg($)就是用自定义函数showmsg处理字符串$,其中SHOWMSG可以用户自定义输入变量:str=str & $把所有数据赋值到一个变量中

    《python编程实践》第8章练习题及解答 作者:陈波,刘慧君

    python编程实践的第8章练习题及解答

    vue学习笔记vue学习笔记

    例如,`点我提示信息&lt;/a&gt;` 阻止默认事件,`点我提示信息&lt;/button&gt;` 阻止事件冒泡,`点我提示信息&lt;/button&gt;` 事件只触发一次,以及 `&lt;div class="box1" @click.capture="showMsg(1)"&gt;div1&lt;div class="box2" @click="...

    函数库

    procedure ShowMsg(Sender:TCustomForm;Msg:String); //显示错误,并终止当前事件 procedure ShowError(Sender:TCustomForm;Error:String); //显示错误 procedure ErrorMsg(Sender:TCustomForm;Error:...

    javascript入门笔记

    在程序中,一旦声明好,就不允许被修改的数据 2、声明常量 const 常量名=值; 常量名在命名时采用全大写形式 作业: 1、声明一个变量 r ,来表示一个圆的半径,并赋值 2、声明一个常量PI ,来表示圆周率3.14 ...

    FYOwnFrame (自定义对话框)

    调用ShowMsg函数,定义如下: function ShowMsg(Text:String;Caption:String= 软件名称 ;OptionText:string= 详细的信息 ;ShowType:Integer=SB_OK;ShowIcon:integer=1;ShowTime:Integer=-1): Integer; Text//显示...

    jquery插件开发之选项卡制作详解

    在jquery中,插件开发常见的有: 一种是为$函数本身扩展一个方法,这种是静态扩展(也叫类...注意要提前引入jquery库, 上例在$函数上面添加了一个方法showMsg,那么就可以用$.showMsg()调用了 $.showName = function(){

    Validform:jquery插件:一行代码搞定整站表单验证!{ Validate all the forms through the site just need one line code! }

    jquery插件:一行代码搞定整站表单验证! Validate all the forms through the site just need one line code!...另外还附加了$.Showmsg()、$.Hidemsg()全局弹出/关闭信息框方法以便整站有一个统一的信息提示效果

    python GUI库图形界面开发之PyQt5信号与槽基础使用方法与实例

    信号与槽有三种使用方法 第一种:内置信号与槽的使用 第二种:自定义信号与槽的使用 第三种:装饰器的信号与槽的使用 一: 内置信号与槽的使用 内置信号与槽的使用,是指在发射信号时,使用窗口控件的函数,而不是...

    JQuery扩展对象方法操作示例

    项目中需要在浏览器右下角提示操作错误和系统提示内容,并有滑动移出和关闭的效果,所以自己写了一个效果还可以的弹出框来。就是给JQuery添加了一个方法ShowMsg。 先上代码: $.fn.extend({ ShowMsg: function ...

    转 Perl语言编写的微信客户端框架

    ShowMsg 100 已发布 sjdy521 打印客户端接收和发送的消息 IRCShell 99 已发布 sjdy521 Linux环境下通过irc客户端使用qq Openwx 98 已发布 sjdy521 提供微信发送消息api接口 Perlcode 97 已发布 sjdy521 通过微信...

    Java开发技术大全(500个源代码).

    differ.java 测试静态方法与实例方法之间的区别 forefather.java 一个简单的基类 grandson.java 上面这个类的子类 hasConstructor.java 拥有构造器的类 hasFinalFun.java 拥有最终方法的类 hasRecall.java ...

    js加密工具【很实用】附演示代码

    保护您的js代码; 演示代码: function Save_View() { var idx =document.getElementById("idx");//项目ID var xmmc =document.getElementById("xmmc");//项目名称 var szqy =document.getElementById("szqy");...

    orangebox:一个简单、轻量级的 Meteor.js 消息框库(在 Atmosphere.js 上可用)

    noClose 选项允许启用或禁用消息框上的 X 按钮。 keyup 允许您添加一些代码以在按下 Enter 时关闭。 window . alert = function ( msg ) { OrangeBox . showMsg ( { msg : msg , buttons : { "Okay

    个人博客系统

    showmsg("文章信息保存成功!"); } if (Request["fid"]==null) { txttitle.Text=""; droptype.SelectedIndex=0; txtjj.Text=""; txtsource.Text=""; txtcontent.Text=""; } } public void showmsg...

    javascript Prototype 对象扩展

    通常的做法是一系列对象共享类的方法,而不是为每个对象复制一份函数。下面看看为每个对象复制一份函数的做法。 代码如下:var myobject=function(param1,param2) { this.name=param1; this.age=param2; this.showmsg...

Global site tag (gtag.js) - Google Analytics