风讯官方论坛FoosunCMS交流区Foosun3.x安装使用[修改]6月16日增加点击图片开下一页功能。[FOR3.2]

1  /  3  页   123 跳转 查看:4146

标题: [修改]6月16日增加点击图片开下一页功能。[FOR3.2]

[修改]6月16日增加点击图片开下一页功能。[FOR3.2]

[修改]新闻内容中的图片自动适应页面大小、增加自身连接和无级缩放功能。

如果全部图片栏目(新闻内容中只有一张图片,没有其他任何内容)的话,则可以实现点击图片打开下一页的功能


第一步:

打开:Foosun\Admin\Refresh\Function.asp


找到大约278行,增加两个函数:

'====================2006-06-16=====================================
Function NextNews(TempNewsID)
 IF Fun_Refresh_Type <> "News" Then Exit Function
 Dim TempID,TempCID,TSql,TObj,TempSql,TempObj
  TSql = "Select ID,ClassID From Fs_News Where NewsID = '" & TempNewsID & "'"
  Set TObj = Conn.Execute(TSql)
  If Not TObj.Eof Then
  TempID = TObj("ID")
  TempCID = TObj("ClassID")
   TempSql = "Select Top 1 * From Fs_News Where ID > " & TempID & " And AuditTF = 1 And DelTF = 0 And ClassID = '" & TempCID & "' Order By ID"
   Set TempObj = Conn.Execute(TempSql)
    If Not TempObj.Eof Then
     NextNews = GetOneNewsLinkURL(TempObj("NewsID"))
    Else
     Exit Function
    End If
  Else
   Exit Function
  End If
  TempObj.Close
  Set TempObj = Nothing
  TObj.Close
  Set TObj = Nothing
End Function       

'======================================================================================    
'==============2006-05-07==============================================================
Function coden(contentss)
  dim re
           Set re=new RegExp
           re.IgnoreCase =true
           re.Global=True

           re.Pattern="(script)"
           Contentss=re.Replace(Contentss,"s cript")
     re.Pattern="<img.[^>]*src(=| )(.[^>]*)>"
     If instr(1,Contentss,"<IMG") = 1 Then
     Contentss=re.replace(Contentss,"<a href=""" & NextNews(Fun_Refresh_ID) & """ title=""下一张图片""><img src=$2 class=""tk"" style=""cursor: pointer"" onmousewheel=""return zoom_img(event,this)"" onload=""return imgzoom(this,580)""></a>")
     Else
     Contentss=re.replace(Contentss,"<img src=$2 class=""tk"" onclick=""javascript:window.open(this.src);"" style=""cursor: pointer"" alt=按此在新窗口浏览图片 onmousewheel=""return zoom_img(event,this)"" onload=""return imgzoom(this,580)"">")
         End if 
  set re = nothing
      coden = contentss
end function    
'=======================end=====================================================================

(this,700)这个700,你可以根据你的新闻浏览页面的表格的宽度自己改成合适你的。

对以下几句做一下说明:

onclick=""javascript:window.open(this.src);"" 点击图片新窗口打开自身,如果图片本身有连接,这一句可以不要。

style=""cursor: pointer"" 鼠标移动到图片上面的样式,可以不要。

alt=按此在新窗口浏览图片    这一句就不用解释了吧,呵呵。

onmousewheel=""return zoom_img(event,this)""   这一句配合模板中的js代码,实现无级缩放。

onload=""return imgzoom(this,700)"">"    这一句配合模板中的js代码,实现打开时的自动缩小到设置的宽度和高度。

这个修改用正则替换做了简单的替换,没必要做太过复杂的判断吧,呵呵~。再说,再复杂一点,我也不会了,呵呵。


第二步:

还是Foosun\Admin\Refresh\Function.asp找到:

TempletContent = Replace(TempletContent,"{News_Content}",NewsContent)

改成:

TempletContent = Replace(TempletContent,"{News_Content}",coden(NewsContent))


第三步:

在新闻浏览页的模板的</head>标记前面加入以下代码:

<script language="javascript">
function imgzoom(img,maxsize){
var a=new Image();
a.src=img.src
if(a.width > maxsize * 2)
{
  img.style.width=maxsize;
}
else if(a.width >= maxsize)
{
  img.style.width=Math.round(a.width * Math.floor(2 * maxsize / a.width) / 2);
}
return false;
}
function zoom_img(e, o)
{
var zoom = parseInt(o.style.zoom, 10) || 100;
zoom += event.wheelDelta / 12;
if (zoom > 0) o.style.zoom = zoom + '%';
return false;
}  
</script>

这个修改参照动网论坛的代码修改的,我没有仔细测试,需要修改的各位请先注意备份好相关文件。然后如果哪位高手发现有不合理的地方,希望能提供修正,谢谢。



[此贴子已经被作者于2006-6-16 17:10:27编辑过]

附件附件:

您所在的用户组无法下载或查看附件

引用
 

哈哈!沙发啊!


收藏!期待更多精的东西

[em02]




[此贴子已经被作者于2006-4-18 15:43:28编辑过]

引用
 

收藏
引用
 

3.1SP2测试通过,谢谢楼主,对于做图片站的朋友确实是个福音,不过无级放大时会将版面撑开!
没有什么理由,就是喜欢风讯!
引用
 

谢谢楼主.
我的Foosun\Admin\Refresh\Function.asp是修改过了的.请问能不能把加载前后的信息说一下呢?
引用
 

我没有成功呀.不知道为什么.添加就出错.
引用
 

Microsoft VBScript 编译器错误 错误
'800a03ea'


语法错误


/foosun/Admin/refresh/Function.asp 行 306
Function codec(Contentss)

引用
 

http://www.23xp.com/Function.rar


我的文件已经打包了.论坛上发出来说字节太大了.


希望兄弟们帮我解决.

引用
 

听朋友


抗日反美兄弟说还缺少一个文件.


RefreshFunction.asp

引用
 

晕了.怎么没有人啊
引用
 

超级不喜欢这个

引用
 

我准备测试使用了,不好意思,又来拿楼主的东西,简直成小偷了


[em01][em01][em01]
引用
 

好像没有判断是否已经存在链接,我仅仅是看了代码,还没有测试

[em01][em01]
引用
 

还有一个问题,如果系统中已经有小图了,应当会出现错误的,就是已经是小图链接大图,肯定会出现问题的

引用
 

收藏,谢谢。

引用
 

回50277,你的函数写错了,是function coden(contentss)不是function codec(contentss)
引用
 

恩,说的详细又配文件下载,这样的教程最好!


不喜欢只言片语的,看不懂让人郁闷,不如不发!

引用
 

以下是引用iyuki在2006-4-18 22:16:00的发言:

超级不喜欢这个


可以不用的,没有人强迫你

没有什么理由,就是喜欢风讯!
引用
 

收藏
引用
 

好东西

福建宁化第二中学网站(调试中):
http://www.nhez.cn  (风讯核心,调试中)
QQ:280601330
¥已转到免费1G空间,欢迎光临。¥
免费1G空间注册地址:
http://www.mianfei.la/index.php?id=13403
引用
 

为什么生成就出错啊


谁该好了,说下啊

引用
 

谢谢你的提醒.


想问一下.如果要加载此功能在别的程系上应该怎么做呢?

引用
 

好啊
引用
 

谢谢,我正需要哈~~~~~~~~~~
引用
 

好好好,坚决支持你!!!!!!!!!


[em17][em17][em17]

引用
 

ff
引用
 

2006-06-16在原基础上增加了纯图片栏目点击图片打开下一页的功能。