首页 | 风讯安装 | 后台管理 | 升级转换 | 模板制作 | 标签说明 | 采集说明 | 常见问题 | 自由标签 | 样式管理 | 功能扩展 | 插件使用 |
常 见 问 题
新 手 入 门
中 级 进 阶
高 级 技 巧
 关于子栏目列表导航图片问题的修正方法 [供参考] ★★★★★ 【字体:小 大】 
关于子栏目列表导航图片问题的修正方法 [供参考]
http://www.foosun.cn   作者:风讯科技   来源:  点击:  更新时间:06-06-16 10:35:56
注意:因我测试时没有使用“更多内容”导航,所以忽略了些问题,不使用“更多内容”导航没问题,使用了会提示TempRowNumberStr变量未定义,提供下载的文件也没修改,请参照下面的修改方法自行修改。

从SP1开始就存在的问题:子栏目新闻列表,使用导航图片时,只有第一个子栏目正确,其他的都无法显示;研究发现并非仅仅导航图片存在这样的问题,还有新闻分割图片,新闻间距,栏目间距等等都存在类似问题。初步断定为变量定义及赋值的位置不对,使得部分代码在循环内自我复制导致错误。现提供我的修改方法,供大家参考:

文件:Admin\Refresh\Refreshfunction.asp

位置:ChildClassList函数 和 GetOneClassNewsList函数

function ChildClassList(ClassNumberStr,NewsNumberStr,CompatPicStr,NaviPicStr,ClassRowHeightStr,NewsRowHeightStr,ClassRowNumberStr,NewsRowNumberStr,DateRuleStr,DateRightStr,TitleNumberStr,MoreLinkTypeStr,MoreLinkContentStr,ClassBGPicStr,CSSStyleStr,OpenTypeStr,DateCSSStyleStr,TxtNaviStr)
dim TempRowNumberStr      ' 新增变量
If TitleNumberStr <> "" then
  TitleNumberStr = Cint(TitleNumberStr)
Else
  TitleNumberStr = 10
End If
'这个地方昨天晚上忘了标出来了,所以导致导航图片无法显示,不好意思:>
  if TxtNaviStr <> "" then
   NaviPicStr = TxtNaviStr
  else
   if NaviPicStr <> "" then NaviPicStr = "<img src=""" & NaviPicStr & """>"
  end if


if RefreshType = "Class" then
  Dim ClassSql,RsClassObj,AllChildClassID,i
  AllChildClassID = ChildClassIDList(RefreshID)
  if AllChildClassID <> "" then
   if Left(AllChildClassID,1) = "," then
    AllChildClassID = Right(AllChildClassID,Len(AllChildClassID)-1)
   end if
  else
   ChildClassList = ""
   Exit function
  end if
  if ClassBGPicStr <> "" then
   ClassBGPicStr = "<tr>" & Chr(13) & Chr(10) & "<td Height=1 colspan=""" & ClassRowNumberStr & """>" & Chr(13) & Chr(10) & "<table width=""100%"" cellpadding=""0"" cellspacing=""0"">" & Chr(13) & Chr(10) & "<tr>" & Chr(13) & Chr(10) & "<td Height=1 background=""" & ClassBGPicStr & """>" & Chr(13) & Chr(10) & "</td>" & Chr(13) & Chr(10) & "</tr>" & Chr(13) & Chr(10) & "</table>" & Chr(13) & Chr(10) & "</td>" & Chr(13) & Chr(10) & "</tr>"
  end if
  ClassSql = "Select Top " & ClassNumberStr & " * from NewsClass where ClassID in (" & AllChildClassID & ") and DelFlag=0 order by ID desc"
  Set RsClassObj = Conn.Execute(ClassSql)
  if Not RsClassObj.Eof then
'======== 新增代码=======
  if DateRuleStr <> "" then
   if DateRightStr = "Left" then
    TempRowNumberStr = "colspan=""" & NewsRowNumberStr & """"
   elseif DateRightStr = "Center" then
    TempRowNumberStr = "colspan=""" & NewsRowNumberStr * 2 & """"

9 7 3 1 2 3 4 8 :
文章录入:风讯科技  责任编辑:风讯科技  
·上一篇:关于用户点击投稿时无法登录的解决方法
·下一篇:正式版-错误:热点文章总是显示点击数最少的新闻. 解决方法
【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
 网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
 没有任何评论
2002-2006 Foosun Inc. 四川风讯科技发展有限公司.版权所有  蜀ICP备 05005237