插件作者的标准出来了!Manyou诚邀开发者加盟!
“互联网平台开发者”特刊 有奖征集开发者
立即免费下载 Discuz!6.1.0正式版
Discuz! 6.1.0 使用说明
Discuz!NT2.5正式版发布
开放源码下载
UCenter Home 1.2 正式版发布
官方站 | 帮助文档
基于ECShop的网店托管-卖否
PHP就业培训直通车 | LAMP培训大连
Discuz!收费服务内容及价格
《站长》杂志读者调查表
Discuz!/ECShop 专用官方虚拟主机
Insenz最新活动精美礼品大派送!
Comsenz 招聘信息
网店系统ECShop v2.6.0正式版火热发布
基于Discuz!的免费论坛空间5D6D
《站长》第七期:2008SNS进行时
返回列表 发新话题

超酷论坛公告美化!仿 FreeDiscuz滚动式公告!FOR D5

效果说明:
论坛公告   向上滚动一条  停止 3秒  继续滚下条!再停 !效果好很好!
经测试非官方风格也支持  完整无错版!

技术支持: http://bbs.eno.cc/thread-389-1-1.html


演示:
http://bbs.eno.cc          非官方风格演示
http://www.aodot.net   官方风格演示

适用版本:

DZ 5.0

开发此插件体会:
继本人开发的 D4版本此插件得到了不少朋友的支持!
http://www.discuz.net/viewthread.php?tid=301123
从DZ 版本升级后本人没时间开发此插件!而此插件开发也很简单!可没人做!
有很多朋友来消息询问我D5版本的怎么还不出来
故本人在此通宵开发此插件!

需要修改部分:
include/common.js
index.php
templates/default/discuz.htm

开始操作:
打开include/common.js

在最后插入:
var marqueeInterval=new Array();
var marqueeId=0;
var marqueeDelay=3000;
var marqueeHeight=15;
function initMarquee() {
        var str=marqueeContent[0];
        document.write('<div id=marqueeBox style="overflow:hidden;height:'+marqueeHeight+'px" onmouseover="clearInterval(marqueeInterval[0])" onmouseout="marqueeInterval[0]=setInterval(\'startMarquee()\',marqueeDelay)"><div>'+str+'</div></div>');
        marqueeId++;
        marqueeInterval[0]=setInterval("startMarquee()",marqueeDelay);
}

function startMarquee() {
        var str=marqueeContent[marqueeId];
        marqueeId++;
        if(marqueeId>=marqueeContent.length) marqueeId=0;
        if(document.getElementById('marqueeBox').childNodes.length==1) {
                var nextLine=document.createElement('DIV');
                nextLine.innerHTML=str;
                document.getElementById('marqueeBox').appendChild(nextLine);
        } else {
                document.getElementById('marqueeBox').childNodes[0].innerHTML=str;
                document.getElementById('marqueeBox').appendChild(document.getElementById('marqueeBox').childNodes[0]);
                document.getElementById('marqueeBox').scrollTop=0;
        }
        clearInterval(marqueeInterval[1]);
        marqueeInterval[1]=setInterval("scrollMarquee()",20);
}

function scrollMarquee() {
        document.getElementById('marqueeBox').scrollTop++;
        if(document.getElementById('marqueeBox').scrollTop%marqueeHeight==(marqueeHeight-1)){
                clearInterval(marqueeInterval[1]);
        }
}
复制代码
打开 templates/default/discuz.htm

搜索
<!--{if !empty($announcements)}-->复制代码
                <div id="announcement" style="clear: both; width: {TABLEWIDTH}">$announcements</div>
                <script type="text/javascript">announcement();</script>
复制代码
替换为
<div id="announcement" style="clear: both; width: {TABLEWIDTH}"><script language="javascript">
        var marqueeContent=new Array();
        $announcements
        initMarquee();
</script></div>
复制代码
打开index.php

将:
if(empty($gid)) {
        $announcements = $space = '';
        if($_DCACHE['announcements']) {
                foreach($_DCACHE['announcements'] as $announcement) {
                        if(empty($announcement['redirect'])) {
                                $announcements .= $space.'<a href="announcement.php?id='.$announcement['id'].'#'.$announcement['id'].'"><span class="bold">'.$announcement['subject'].'</span> '.
                                        '('.gmdate($dateformat, $announcement['starttime'] + $timeoffset * 3600).')</a>';
                        } else {
                                $announcements .= $space.'<a href="'.$announcement['message'].'" target="_blank"><span class="bold">'.$announcement['subject'].'</span> '.
                                        '('.gmdate($dateformat, $announcement['starttime'] + $timeoffset * 3600).')</a>';
                        }
                        $space = '       ';
                }
        }
复制代码
替换为
if(empty($gid)) {
        $announcements = $space = '';
        $announcementn = 0;
        if($_DCACHE['announcements']) {
                foreach($_DCACHE['announcements'] as $announcement) {
                        if(empty($announcement['redirect'])) {
                                $announcements .=  'marqueeContent['.$announcementn.']=\'<a href="announcement.php?id='.$announcement['id'].'#'.$announcement['id'].'"><span class="bold">'.$announcement['subject'].'</span>('.gmdate($dateformat, $announcement['starttime'] + $timeoffset * 3600).')</a>\';';
                        } else {
                                $announcements .= 'marqueeContent['.$announcementn.']=\'<a href="'.$announcement['message'].'" target="_blank"><span class="bold">'.$announcement['subject'].'</span>('.gmdate($dateformat, $announcement['starttime'] + $timeoffset * 3600).')</a>\';';
                        }
                        $announcementn++;
                }
        }
复制代码
1

评分次数

  • 僭燮水

留位更新
!~~~~~~~
留位!~~~~~~~~~~~~~~~~~~~~~~
错位问题。。。。。。。。。。。。

[ 本帖最后由 juse 于 2006-12-21 00:47 编辑 ]
啊啊啊.JPG
非常不错的东西!!!!!!!!!!!!!!!1      
原帖由 juse 于 2006-12-21 00:39 发表
错位问题。。。。。。。。。。。。
非官方风格  地址
有朋友做成功的 地址发出来给大家看看哈
:L
原帖由 5025488.net 于 2006-12-21 11:30 发表
:L
???????
返回列表