
织梦DedeCMS系统,处处都在用到提示信息,但是这个提示框,前台后台一层不变,太死板了,可能有很多人都有过去修改它的想法,只是苦于不知道去哪里改。今天我就来说说这个吧,DedeCMS的所有提示信息都是用ShowMsg方法进行处理的,这个函数存放在/include/common.func.php 源代码如下:
02 | * 短消息函数,可以在某个动作处理后友好的提示信息 |
04 | * @param string $msg 消息提示信息 |
05 | * @param string $gourl 跳转地址 |
06 | * @param int $onlymsg 仅显示信息 |
07 | * @param int $limittime 限制时间 |
10 | function ShowMsg( $msg , $gourl , $onlymsg =0, $limittime =0) |
12 | 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" ; |
18 | $litime = ( $limittime ==0 ? 1000 : $limittime ); |
23 | if ( $limittime ==0) $litime = 5000; |
24 | $gourl = "javascript:history.go(-1);" ; |
27 | if ( $gourl == '' || $onlymsg ==1) |
29 | $msg = "<script>alert(\"" . str_replace ( "\"" , "“" , $msg ). "\");</script>" ; |
33 | //当网址为:close::objname 时, 关闭父框架的id=objname元素 |
34 | if (preg_match( '/close::/' , $gourl )) |
36 | $tgobj = trim(preg_replace( '/close::/' , '' , $gourl )); |
37 | $gourl = 'javascript:;' ; |
38 | $func .= "window.parent.document.getElementById('{$tgobj}').style.display='none';\r\n" ; |
43 | if (pgo==0){ location= '$gourl' ; pgo=1; } |
46 | $rmsg .= "document.write(\"<br /><div style='width:450px;padding:0px;border:1px solid #DADADA;'>" ; |
47 | $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" ; |
48 | $rmsg .= "document.write(\"<div style='height:130px;font-size:10pt;background:#ffffff'><br />\");\r\n" ; |
49 | $rmsg .= "document.write(\"" . str_replace ( "\"" , "“" , $msg ). "\");\r\n" ; |
50 | $rmsg .= "document.write(\"" ; |
54 | if ( $gourl != 'javascript:;' && $gourl != '' ) |
56 | $rmsg .= "<br /><a href='{$gourl}'>如果你的浏览器没反应,请点击这里...</a>" ; |
57 | $rmsg .= "<br/></div>\");\r\n" ; |
58 | $rmsg .= "setTimeout('JumpUrl()',$litime);" ; |
62 | $rmsg .= "<br/></div>\");\r\n" ; |
67 | $rmsg .= "<br/><br/></div>\");\r\n" ; |
69 | $msg = $htmlhead . $rmsg . $htmlfoot ; |
|
可以看出ShowMsg有四个参数,第一个参数是提示的信息,第二个就参数是跳转的地址,如果设置为-1的话,就是返回上一个页面,第三个参数其它就是定义是用alert()弹出提示框,还是显示提示信息,第四个参数就是信息提示页面显示多久再进行跳转,默认是1秒种。修改这个提示框比较简单了,直接替换对应的文字
这个提示框的CSS也是写在内部的,如果我们需要修改,可以在这里直接修改源码,甚至我们还可以为这个ShowMsg函数增加一个参数,然后根据这个参数,显示不同的效果。
|