风讯官方论坛

首页 » FoosunCMS交流区 » Foosun3.x安装使用 » [修改]增加可连续滚动图片标签[带演示]
忘记注册了 - 2006-6-15 20:18:00

本修改3.2.sp1免费测试通过。其他的版本没测试,大家注意,愿意修改的,请注意做好备份

一、打开\Foosun\Editer\LableEditer.asp 修改两个地方

(1)

 <td width="1"> <div align="center" class="ToolSeparator"></div></td>
          <td width="30"><div align="center"><img onClick="InsertScript('RSS');"  class="Btn" alt="RSS标签" src="../Images/Lable/rss.gif"  width="24"  height="24"></div></td>
          <td width="1"> <div align="center" class="ToolSeparator"></div></td>
          <td width="30"><div align="center"><img onClick="InsertScript('MarqueePic');"  class="Btn" alt="滚动图片" src="../Images/Lable/Mpueepic.gif"  width="24"  height="24"></div></td>
  </tr>
      </table></td>
  </tr>
  <tr>
    <td><table height="30" border="0" cellpadding="0" cellspacing="0" class="ToolSet">

 (2)

case 'Mall_TopProducts':
   var ReturnValue=OpenWindow('../FunPages/Frame.asp?FileName=Mall/Mall_TopProducts.asp&PageTitle=商品排行调用',460,260,window);
   break;
      case 'MarqueePic':
   var ReturnValue=OpenWindow('../FunPages/Frame.asp?FileName=LableMqueePic.asp&PageTitle=滚动图片标签属性',336,195,window);
   break;
  case 'Mall_Products':
   var ReturnValue=OpenWindow('../FunPages/Frame.asp?FileName=Mall/Mall_Products.asp&PageTitle=商品页面',260,105,window);
   break;
  case 'Mall_PayStyle':
   var ReturnValue='{%=Mall_PayStyle()%}';
   break;
  case 'RSS':
   ReturnValue='{%=RSS()%}';
   break;

 

二、下载压缩包中的两个文件:Mpueepic.gifLableMqueePic.asp

Mpueepic.gif  放到\Foosun\Images\Lable目录

LableMqueePic.asp放到\Foosun\FunPages目录

 [upload=gif]UploadFile/2006-6/200661520115658435.gif[/upload]

[upload=rar]viewFile.asp?ID=4452[/upload]

 

三、打开\Foosun\Admin\Refresh\cls_refresh.asp文件,修改两个地方:(红色部分)

(1)

Array("UnRuleNews","NewsNumber","ClassEName","IsIncludeChildTF","OpenType"),_
  Array("marqueepic","ClassEName","SoonClassStr","PicNumberStr","LoopSpeedStr","MarqueeWidthStr","MarqueeHeightStr","PicWidthStr","PicHeightStr","PicCssStr","PicFgStr","OpenTypeStr","MarqueeTypeStr"),_
  Array("RSS"),_
  Array("mall_paystyle"))
  f_Lable_Cont = Replace(f_Lable_Cont,Chr(13) & Chr(10),"")
  f_Lable_Cont = Replace(f_Lable_Cont,"{%=","")
  f_Lable_Cont = Replace(f_Lable_Cont,"%}","")

(2)

   Case "mall_help" : if UBound(m_Prar_Cont_Array) = 9 then : Select_Function = Mall_Help(m_Prar_Cont_Array(1),m_Prar_Cont_Array(2),m_Prar_Cont_Array(3),m_Prar_Cont_Array(4),m_Prar_Cont_Array(5),m_Prar_Cont_Array(6),m_Prar_Cont_Array(7),m_Prar_Cont_Array(8),m_Prar_Cont_Array(9)) : else : Select_Function = "" : Exit Function : end if
'====================2006-06-14====================================================================
   Case "marqueepic" : If UBound(m_Prar_Cont_Array) = 12 then : Select_Function = marqueepic(m_Prar_Cont_Array(1),m_Prar_Cont_Array(2),m_Prar_Cont_Array(3),m_Prar_Cont_Array(4),m_Prar_Cont_Array(5),m_Prar_Cont_Array(6),m_Prar_Cont_Array(7),m_Prar_Cont_Array(8),m_Prar_Cont_Array(9),m_Prar_Cont_Array(10),m_Prar_Cont_Array(11),m_Prar_Cont_Array(12)) : Else : Select_Function = "" : Exit Function : End If
'=========================================end================================================================
   Case "mall_paystyle" : Select_Function = Mall_PayStyle
   Case "unrulenews"
    if UBound(m_Prar_Cont_Array) = 3 then ReDim Preserve m_Prar_Cont_Array(4) : m_Prar_Cont_Array(4) = "0"
    if UBound(m_Prar_Cont_Array) = 4 then : Select_Function = Get_No_Rule_NewsList_Content(m_Prar_Cont_Array(1),m_Prar_Cont_Array(2),m_Prar_Cont_Array(3),m_Prar_Cont_Array(4)) : else : Select_Function = "" : Exit Function : end if
   Case "rss" : Select_Function = RSS : Exit Function
   Case Else : Select_Function = "" : Exit Function
  End Select
 End Function

 

四、打开\Foosun\Admin\Refresh\RefreshFunction.asp增加一个函数

函数代码在2楼提供,上面的压缩包里也有。

 

后台效果:

[upload=gif]UploadFile/2006-6/200661520175079499.gif[/upload]



附件: 4321.gif

附件: 4322.rar

附件: 4323.gif
忘记注册了 - 2006-6-15 20:21:00

refreshfunction.asp中增加的函数

'============2006-06-14====滚动图片标签=======================
Function MarqueePic(ClassEName,SoonClassStr,PicNumberStr,LoopSpeedStr,MarqueeWidthStr,MarqueeHeightStr,PicWidthStr,PicHeightStr,PicCssStr,PicFgStr,OpenTypeStr,MarqueeTypeStr)
 OpenTypeStr = GetOpenTypeStr(OpenTypeStr)
 If PicCssStr <> "" Then
    PicCssStr = "Class=""" & PicCssStr &""""
 Else
    PicCssStr = ""
 End If     
 Dim i,TcFg
  If PicFgStr <> "" And PicFgStr > "0" Then
   For i = 1 to PicFgStr
    TcFg = TcFg & "<br>"
   Next
  Else
    TcFg = ""
  End If  
 Dim TempID,TempObj,EndClassID
 If ClassEName <> "" Then
   Set TempObj = Conn.Execute("Select ClassID From Fs_NewsClass Where ClassEName = '" & ClassEName & "'")
  If NOt TempObj.Eof Then 
   TempID = TempObj("ClassID")
   If SoonClassStr = "1" Then
    EndClassID = "'" & TempID & "'" & ChildClassIDList(TempID)
   Else
    EndClassID = "'" & TempID & "'"
   End If
  Else
    EndClassID = ""
  End If
  TempObj.close
 Set TempObj = Nothing
 Else
  Select Case Fun_Refresh_Type
      Case "Class"
       If SoonClassStr = "1" Then
     EndClassID = "'" & Fun_Refresh_ID & "'" & ChildClassIDList(Fun_Refresh_ID)
    Else
     EndClassID = "'" & Fun_Refresh_ID & "'"
    End If
      Case "News"
        Dim TClassID,TClassObj
      Set TClassObj = Conn.Execute("Select ClassID From Fs_News Where NewsID = '" & Fun_Refresh_ID & "'")
      If Not TClassObj.Eof Then
       TClassID = TClassObj("ClassID")
        If SoonClassStr = "1" Then
           EndClassID = "'" & TClassID & "'" & ChildClassIDList(TClassID)
        Else
           EndClassID = "'" & TClassID & "'"
        End If
      Else
       EndClassID = ""
      End If
      TClassObj.Close
      Set TClassObj = Nothing
    Case Else
     EndClassID = ""
  End Select
 End If
 Dim MpicSql,MpicObj
 IF EndClassID <> "" Then
  MpicSql = "Select Top " & PicNumberStr & " * From Fs_News Where PicNewsTF = 1 And MarqueeNews = 1 And DelTF = 0 And ClassID In (" & EndClassID & ") Order By AddDate Desc"
 Else
  Select Case Fun_Refresh_Type
      Case "Special"
      MpicSql = "Select Top " & PicNumberStr & " * From Fs_News Where PicNewsTF = 1 And MarqueeNews = 1 And DelTF = 0 And SpecialID
            Like '" & Fun_Refresh_ID & "' Order By AddDate Desc"
      Case Else
     MpicSql = "Select Top " & PicNumberStr & " * From Fs_News Where PicNewsTF = 1 And MarqueeNews = 1 And DelTF = 0 Order By AddDate Desc"
  End Select
 End If
 Set MpicObj = Conn.Execute(MpicSql)
 If Not MpicObj.Eof Then
  If MarqueeTypeStr = "up" Then
    MarqueePic = "<div id=""demo"" style=""overflow:hidden; width:" & MarqueeWidthStr & "px; height:" & MarqueeHeightStr & "px;"">" & Chr(13) & Chr(10) & "<div id=""demo1"">"
   Do While Not MpicObj.Eof
    MarqueePic = MarqueePic & "<a" & OpenTypeStr & " href=""" & GetOneNewsLinkURL(MpicObj("NewsID")) & """ title="""& MpicObj("Title")&"""><img src=""" & MpicObj("PicPath") & """ width=""" & PicWidthStr & """ height=""" & PicHeightStr & """ " & PicCssStr & " border=""0""></a><br>" & TcFg & ""
   MpicObj.MoveNext
   Loop
    MarqueePic = MarqueePic & "</div><div id=demo2></div></div>" & Chr(13) & Chr(10) & "<script language=""javascript"">" & Chr(13) & Chr(10) & "var speed=" & LoopSpeedStr & "" & Chr(13) & Chr(10) & "demo2.innerHTML=demo1.innerHTML" & Chr(13) & Chr(10) & "function Marquee(){" & Chr(13) & Chr(10) & "if(demo2.offsetTop-demo.scrollTop<=0)" & Chr(13) & Chr(10) & "demo.scrollTop-=demo1.offsetHeight" & Chr(13) & Chr(10) & " else{" & Chr(13) & Chr(10) & "demo.scrollTop++" & Chr(13) & Chr(10) & "}" & Chr(13) & Chr(10) & "}" & Chr(13) & Chr(10) & "var MyMar=setInterval(Marquee,speed)" & Chr(13) & Chr(10) & "demo.onmouseover=function(){clearInterval(MyMar)}" & Chr(13) & Chr(10) & "demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}" & Chr(13) & Chr(10) & "</script>"
  ElseIf MarqueeTypeStr = "down" Then
    MarqueePic = "<div id=""demo"" style=""overflow:hidden; width:" & MarqueeWidthStr & "px; height:" & MarqueeHeightStr & "px;"">" & Chr(13) & Chr(10) & "<div id=""demo1"">"
   Do While Not MpicObj.Eof
    MarqueePic = MarqueePic & "<a" & OpenTypeStr & " href=""" & GetOneNewsLinkURL(MpicObj("NewsID")) & """ title="""& MpicObj("Title")&"""><img src=""" & MpicObj("PicPath") & """ width=""" & PicWidthStr & """ height=""" & PicHeightStr & """ " & PicCssStr & " border=""0""></a><br>" & TcFg & ""
   MpicObj.MoveNext
   Loop
    MarqueePic = MarqueePic & "</div><div id=demo2></div></div>" & Chr(13) & Chr(10) & "<script language=""javascript"">" & Chr(13) & Chr(10) & "var speed=" & LoopSpeedStr & "" & Chr(13) & Chr(10) & "demo2.innerHTML=demo1.innerHTML" & Chr(13) & Chr(10) & "demo.scrollTop=demo.scrollHeight" & Chr(13) & Chr(10) & "function Marquee(){" & Chr(13) & Chr(10) & "if(demo1.offsetTop-demo.scrollTop>=0)" & Chr(13) & Chr(10) & "demo.scrollTop+=demo2.offsetHeight" & Chr(13) & Chr(10) & "else{" & Chr(13) & Chr(10) & "demo.scrollTop-- " & Chr(13) & Chr(10) & "}" & Chr(13) & Chr(10) & "}" & Chr(13) & Chr(10) & "var MyMar=setInterval(Marquee,speed)" & Chr(13) & Chr(10) & "demo.onmouseover=function() {clearInterval(MyMar)}" & Chr(13) & Chr(10) & "demo.onmouseout=function()" & Chr(13) & Chr(10) & "{MyMar=setInterval(Marquee,speed)}" & Chr(13) & Chr(10) & "</script> "
  ElseIf MarqueeTypeStr = "left" Then
    MarqueePic = "<div id=""demo"" style=""overflow:hidden;width:" & MarqueeWidthStr & "px; height:" & MarqueeHeightStr & "px;""><table align=""left"" cellpadding=""0"" cellspace=""0"" border=""0""><tr><td id=""demo1"" valign=""top"">"
   Do While Not MpicObj.Eof
    MarqueePic = MarqueePic & "<a" & OpenTypeStr & " href=""" & GetOneNewsLinkURL(MpicObj("NewsID")) & """ title="""& MpicObj("Title")&"""><img src=""" & MpicObj("PicPath") & """ align=""left"" width=""" & PicWidthStr & """ height=""" & PicHeightStr & """ " & PicCssStr & " border=""0""></a>"
   MpicObj.MoveNext
   Loop
    MarqueePic = MarqueePic & "</td><td id=""demo2"" valign=""top""></td></tr></table></div>" & Chr(13) & Chr(10) & "<script language=""javascript"">" & Chr(13) & Chr(10) & "var speed=" & LoopSpeedStr & "" & Chr(13) & Chr(10) & "demo2.innerHTML=demo1.innerHTML" & Chr(13) & Chr(10) & "function Marquee(){" & Chr(13) & Chr(10) & "if(demo2.offsetWidth-demo.scrollLeft<=0)" & Chr(13) & Chr(10) & "demo.scrollLeft-=demo1.offsetWidth" & Chr(13) & Chr(10) & "else{" & Chr(13) & Chr(10) & "demo.scrollLeft++" & Chr(13) & Chr(10) & "}" & Chr(13) & Chr(10) & "}" & Chr(13) & Chr(10) & "var MyMar=setInterval(Marquee,speed)" & Chr(13) & Chr(10) & "demo.onmouseover=function() {clearInterval(MyMar)}" & Chr(13) & Chr(10) & "demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}" & Chr(13) & Chr(10) & "</script>"
  Else
    MarqueePic = "<div id=""demo"" style=""overflow:hidden;width:" & MarqueeWidthStr & "px; height:" & MarqueeHeightStr & "px;""><table align=""left"" cellpadding=""0"" cellspace=""0"" border=""0""><tr><td id=""demo1"" valign=""top"">"
   Do While Not MpicObj.Eof
    MarqueePic = MarqueePic & "<a" & OpenTypeStr & " href=""" & GetOneNewsLinkURL(MpicObj("NewsID")) & """ title="""& MpicObj("Title")&"""><img src=""" & MpicObj("PicPath") & """ width=""" & PicWidthStr & """ height=""" & PicHeightStr & """ " & PicCssStr & " border=""0""></a> "
   MpicObj.MoveNext
   Loop
    MarqueePic = MarqueePic & "</td><td id=""demo2"" valign=""top""></td></tr></table></div>" & Chr(13) & Chr(10) & "<script language=""javascript"">" & Chr(13) & Chr(10) & "var speed=" & LoopSpeedStr & "" & Chr(13) & Chr(10) & "demo2.innerHTML=demo1.innerHTML" & Chr(13) & Chr(10) & "function Marquee(){" & Chr(13) & Chr(10) & "if(demo.scrollLeft<=0)" & Chr(13) & Chr(10) & "demo.scrollLeft+=demo2.offsetWidth" & Chr(13) & Chr(10) & "else{" & Chr(13) & Chr(10) & "demo.scrollLeft--" & Chr(13) & Chr(10) & "}" & Chr(13) & Chr(10) & "}" & Chr(13) & Chr(10) & "var MyMar=setInterval(Marquee,speed)" & Chr(13) & Chr(10) & "demo.onmouseover=function() {clearInterval(MyMar)}" & Chr(13) & Chr(10) & "demo.onmouseout=function() {MyMar=setInterval(Marquee,speed)}" & Chr(13) & Chr(10) & "</script>"
  End If 
 Else
  MarqueePic = "当前滚动图片标签没有符合的新闻"
 End IF 
 MpicObj.close
 Set MpicObj = Nothing
End Function
'=============End=============================================

演示地址:

http://think.gotoedu.cn/up.html

http://think.gotoedu.cn/down.html

http://think.gotoedu.cn/left.html

http://think.gotoedu.cn/right.html

感谢论坛“MultiWin”提供演示地址!


不好意思一下,呵呵~才发现一个小错误,上面代码中兰色的那里,应该是 SpecialID Like 原来写的是 ClassID lide  [em31][em31] 包括压缩包里的代码也是一样的,希望修改的可以自己改一下下,除了把标签放到专题页会有错误之外,对其他的没有影响。

汗一下。。。。。。


[此贴子已经被作者于2006-6-16 09:20:32编辑过]

myhero - 2006-6-15 20:34:00

沙发?一直在找这个 ,多谢!

老大,3.1SP2能否也写一个啊


[此贴子已经被作者于2006-6-17 00:48:05编辑过]

雪落尘埃 - 2006-6-15 21:09:00
哈哈。谢谢你哦!感激!
雪落尘埃 - 2006-6-15 21:45:00
请问这个新闻的属性是属于哪一种的啊?我改好了。可是都是是显示

当前滚动图片标签没有符合的新闻

itv - 2006-6-15 22:57:00
谢谢!很方便了。超版有时间弄弄通用标签吧
忘记注册了 - 2006-6-16 09:04:00

PS TO 雪落尘埃:要求的新闻属性是图片新闻加滚动属性。

另,次标签在不选择栏目的情况,可以自动识别当前栏目,并调用当前栏目中的滚动图片新闻。


[此贴子已经被作者于2006-6-16 09:04:56编辑过]

zhcmz - 2006-6-16 09:22:00
感谢提供!
ooooooh - 2006-6-16 10:45:00
问个问题,什么是“RSS标签”
老唐 - 2006-6-16 10:47:00
GOOD~~
williams - 2006-6-16 10:57:00
这个功能不错。。。嘿嘿。。谢谢楼主的辛勤劳动
网讯 - 2006-6-16 16:38:00
向老大学习![em07]
卡又文 - 2006-6-16 21:36:00
致敬
myhero - 2006-6-17 01:08:00
再顶下   强烈要求强人出个  3.1SP2的   谢谢
雪落尘埃 - 2006-6-17 10:22:00
我滚了一下就不滚了郁闷%
kedee - 2006-6-17 11:30:00
太好了,不错
长白山人 - 2006-6-18 00:28:00
我用在3.1上了,就是图片数量控制不了。简直太方便了,非常感谢你的辛勤劳动。
长白山人 - 2006-6-18 00:37:00

顺便说一下3.1把下面代码加到SelectFunction.asp上,具体做法查找
Case "relatenews"
在这段代码上面加上一下代码
           Case "marqueepic"
                if UBound(ParaArray) = 12then
                    GetLableContent = marqueepic(ParaArray(1),ParaArray(2),ParaArray(3),ParaArray(4),ParaArray(5),ParaArray(6),ParaArray(7),ParaArray(8),ParaArray(9),ParaArray(10),ParaArray(11),ParaArray(12))
                else
                   GetLableContent = ""
                   Exit Function
                 end if
使用时设置图片新闻不能高于实际新闻数量,否则滚动效果不好。会发生停顿。


[此贴子已经被作者于2006-6-18 00:38:12编辑过]

雪落尘埃 - 2006-6-18 10:52:00
这个滚动标签会和首页的幻灯片新闻冲突的。怎么办哦?用了这个JS新闻幻灯片就不行了。
cyxjq - 2006-6-29 10:08:00
没有冲突吧!我没发现这个问题!
myhero - 2006-6-29 22:40:00
经测试.....一个页面如果有2个滚动图片标签的话....全部都不能滚动了
忘记注册了 - 2006-6-30 14:49:00
以下是引用myhero在2006-6-29 22:40:00的发言:
经测试.....一个页面如果有2个滚动图片标签的话....全部都不能滚动了

是的,因为变量会重名。我没有做多变量定义。

gsdavy - 2006-6-30 15:35:00

 斑竹帮俺看看俺的站,采集的时候出现这样的错误,登陆地址是

http://www.99baba.com/foosun/admin/login.asp

登陆名和密码是admin  admin888

序号: 12    结果标题为空,没有保存
    新闻链接http://ent.sina.com.cn/v/m/p/2006-06-30/11561141536.html

hotla - 2006-7-3 09:15:00
呵呵,如果要显示标题呢.
zzzqqq888 - 2006-7-21 15:39:00

在一个设定高度有表格中,图片向左滚动时,为何图片要高出一些

ftuo - 2006-7-25 11:25:00
非常感谢,我已经添加成功!
liukelong - 2006-7-27 22:15:00
我用了,可以滚动,但是滚动了一下就不到,是什么原因啊!
lengxian55 - 2006-8-1 22:18:00
可以滚动 但有一点的就是 比如有虚拟目录 那么本地上传的图片就需要在前面加上虚拟目录 这样图片才能显示

[此贴子已经被作者于2006-8-1 22:20:48编辑过]

paolojch - 2006-8-23 15:30:00

为什么我的滚动一段时间后就停止了呢?

我设置的是10条滚动新闻,栏目中有20条滚动新闻内容,谢谢答复

paolojch - 2006-8-23 15:46:00

问题已解决,但不显示新闻标题,如何修改呢?

辛苦楼主了啊~~~~

[em01]
12
查看完整版本: [修改]增加可连续滚动图片标签[带演示]