红色部分为更正部份,其实也谈不上更正,只是上次有一处更改未在贴子中说明(漏了)。在此致谦!
ThickBox 是基于 jQuery 用 JavaScript 编写的网页UI对话窗口小部件. 它可以用来展示单一图片, 若干图片, 内嵌的内容, iframed的内容, 或以 AJAX 的混合 modal 提供的内容.
前些时候发现插入的某些flv视频不能在IE下播放出来,在寻找解决法时想到了ThickBox。它的功能要比lightbox强大的多,可以实现网页文件的弹出展示,从而避免了在日志中插入FLSH的难看之处(现在那些flv视频网的播放器实在难看,广告也很讨厌)。
下面是它的实现办法:
首先请下载ThickBox压缩包(
请下载附件2),里面有所需要的JS文件、CSS文件以及图片文件。
将解压后的ThickBox文件夹上传到博客程序所在的根目录,即
default.asp文件所在的目录下。并将图片文件
ThickBox.gif放入你的风格
UBB/Icons目录里。
下面是代码修改部份:
1、打开
header.asp文件,在代码“
</head>”之前插入下列代码并保存。
复制内容到剪贴板
代码:
<link rel="stylesheet" href="ThickBox/thickbox.css" type="text/css" media="screen" />
<script type="text/javascript" src="ThickBox/jquery.js"></script>
<script type="text/javascript" src="ThickBox/thickbox.js"></script>2、打开
common/ubbcode.asp 文件。
查找下面的代码(大约在11行左右)复制内容到剪贴板
代码:
Dim re, strMatchs, strMatch, rndID,tmpStr1,tmpStr2,tmpStr3,tmpStr4在其后面追加:,tmpStr5,tmpStr6,tmpStr7。也就是修改为:
复制内容到剪贴板
代码:
Dim re, strMatchs, strMatch, rndID,tmpStr1,tmpStr2,tmpStr3,tmpStr4,tmpStr5,tmpStr6,tmpStr7然后查找下面的代码:
复制内容到剪贴板
代码:
else
re.Pattern="(\[img\])(.[^\]]*)\[\/img\]"
Set strMatchs=re.Execute(strContent)
For Each strMatch in strMatchs
tmpStr1=checkURL(strMatch.SubMatches(1))
strContent=replace(strContent,strMatch.Value,"<a href="""&tmpStr1&""" target=""_blank"" title="""&tmpStr1&"""><img src=""images/image.gif"" alt="""" style=""margin:0px 2px -3px 0px"" border=""0""/>查看图片</a>",1,-1,0)
Next
re.Pattern="\[img=(left|right|center|absmiddle|)\](.[^\]]*)(\[\/img\])"
Set strMatchs=re.Execute(strContent)
For Each strMatch in strMatchs
tmpStr1=strMatch.SubMatches(0)
tmpStr2=checkURL(strMatch.SubMatches(1))
strContent=replace(strContent,strMatch.Value,"<a href="""&tmpStr2&""" target=""_blank"" title="""&tmpStr2&"""><img src=""images/image.gif"" alt="""" style=""margin:0px 2px -3px 0px"" border=""0""/>查看图片</a>",1,-1,0)
Next
re.Pattern="\[img=(\d*|),(\d*|)\](.[^\]]*)\[\/img\]"
Set strMatchs=re.Execute(strContent)
For Each strMatch in strMatchs
tmpStr1=strMatch.SubMatches(0)
tmpStr2=strMatch.SubMatches(1)
tmpStr3=checkURL(strMatch.SubMatches(2))
strContent=replace(strContent,strMatch.Value,"<a href="""&tmpStr3&""" target=""_blank"" title="""&tmpStr3&"""><img src=""images/image.gif"" alt="""" style=""margin:0px 2px -3px 0px"" border=""0""/>查看图片</a>",1,-1,0)
Next
re.Pattern="\[img=(\d*|),(\d*|),(left|right|center|absmiddle|)\](.[^\]]*)(\[\/img\])"
Set strMatchs=re.Execute(strContent)
For Each strMatch in strMatchs
tmpStr1=strMatch.SubMatches(0)
tmpStr2=strMatch.SubMatches(1)
tmpStr3=strMatch.SubMatches(2)
tmpStr4=checkURL(strMatch.SubMatches(3))
strContent=replace(strContent,strMatch.Value,"<a href="""&tmpStr4&""" target=""_blank"" title="""&tmpStr4&"""><img src=""images/image.gif"" alt="""" style=""margin:0px 2px -3px 0px"" border=""0""/>查看图片</a>",1,-1,0)
Next
End IF将其替换为:
复制内容到剪贴板
代码:
Else
re.Pattern="(\[img\])(.[^\]]*)\[\/img\]"
Set strMatchs=re.Execute(strContent)
For Each strMatch in strMatchs
tmpStr1=checkURL(strMatch.SubMatches(1))
strContent=replace(strContent,strMatch.Value,"<a href="""&tmpStr1&""" title=""Colalan's Blog"" class=""thickbox""><img src=""images/image.gif"" alt=""查看图片"" style=""margin:0px 2px -3px 0px"" border=""0""/>查看图片</a>",1,-1,0)
Next
re.Pattern="\[img=(left|right|center|absmiddle|)\](.[^\]]*)(\[\/img\])"
Set strMatchs=re.Execute(strContent)
For Each strMatch in strMatchs
tmpStr1=strMatch.SubMatches(0)
tmpStr2=checkURL(strMatch.SubMatches(1))
strContent=replace(strContent,strMatch.Value,"<a href="""&tmpStr2&""" title=""Colalan's Blog"" class=""thickbox""><img src=""images/image.gif"" alt=""查看图片"" style=""margin:0px 2px -3px 0px"" border=""0""/>查看图片</a>",1,-1,0)
Next
re.Pattern="\[img=(\d*|),(\d*|)\](.[^\]]*)\[\/img\]"
Set strMatchs=re.Execute(strContent)
For Each strMatch in strMatchs
tmpStr1=strMatch.SubMatches(0)
tmpStr2=strMatch.SubMatches(1)
tmpStr3=checkURL(strMatch.SubMatches(2))
strContent=replace(strContent,strMatch.Value,"<a href="""&tmpStr3&""" title=""Colalan's Blog"" class=""thickbox""><img src=""images/image.gif"" alt=""查看图片"" style=""margin:0px 2px -3px 0px"" border=""0""/>查看图片</a>",1,-1,0)
Next
re.Pattern="\[img=(\d*|),(\d*|),(left|right|center|absmiddle|)\](.[^\]]*)(\[\/img\])"
Set strMatchs=re.Execute(strContent)
For Each strMatch in strMatchs
tmpStr1=strMatch.SubMatches(0)
tmpStr2=strMatch.SubMatches(1)
tmpStr3=strMatch.SubMatches(2)
tmpStr4=checkURL(strMatch.SubMatches(3))
strContent=replace(strContent,strMatch.Value,"<a href="""&tmpStr4&""" title=""Colalan's Blog"" class=""thickbox""><img src=""images/image.gif"" alt=""查看图片"" style=""margin:0px 2px -3px 0px"" border=""0""/>查看图片</a>",1,-1,0)
Next
End IF注意上方“End IF“语句的位置!
并在其下方插入以下代码:
复制内容到剪贴板
代码:
re.Pattern = "\[Thicka=(.[^\]]*),(.[^\]]*),(.[^\]]*),(.[^\]]*),(.[^\]]*)\](.[^\[]*)\[\/Thicka]"
Set strMatchs=re.Execute(strContent)
For Each strMatch in strMatchs
tmpStr1=checkURL(strMatch.SubMatches(0))
tmpStr2=strMatch.SubMatches(1)
tmpStr3=strMatch.SubMatches(2)
tmpStr4=strMatch.SubMatches(3)
tmpStr5=strMatch.SubMatches(4)
tmpStr6=strMatch.SubMatches(5)
strContent=replace(strContent,strMatch.Value,"<a href="""&tmpStr1&""" title="""&tmpStr2&""" class=""thickbox""><img src="""&tmpStr6&""" border=""0"" width="""&tmpStr4&""" height="""&tmpStr5&""" alt="""&tmpStr3&"""/></a>",1,-1,0)
Next
re.Pattern = "\[Thickb=(.[^\]]*),(.[^\]]*),(.[^\]]*),(.[^\]]*),(.[^\]]*),(.[^\]]*)\](.[^\[]*)\[\/Thickb]"
Set strMatchs=re.Execute(strContent)
For Each strMatch in strMatchs
tmpStr1=checkURL(strMatch.SubMatches(0))
tmpStr2=strMatch.SubMatches(1)
tmpStr3=strMatch.SubMatches(2)
tmpStr4=strMatch.SubMatches(3)
tmpStr5=strMatch.SubMatches(4)
tmpStr6=strMatch.SubMatches(5)
tmpStr7=strMatch.SubMatches(6)
strContent=replace(strContent,strMatch.Value,"<a href="""&tmpStr1&""" title="""&tmpStr2&""" class=""thickbox"" rel="""&tmpStr6&"""><img src="""&tmpStr7&""" border=""0"" width="""&tmpStr4&""" height="""&tmpStr5&""" alt="""&tmpStr3&""" /></a>",1,-1,0)
Next
re.Pattern = "\[Thickc=(.[^\]]*),(.[^\]]*),(.[^\]]*),(.[^\]]*)\](.[^\[]*)\[\/Thickc]"
Set strMatchs=re.Execute(strContent)
For Each strMatch in strMatchs
tmpStr1=checkURL(strMatch.SubMatches(0))
tmpStr2=strMatch.SubMatches(1)
tmpStr3=strMatch.SubMatches(2)
tmpStr4=strMatch.SubMatches(3)
tmpStr5=strMatch.SubMatches(4)
tmpStr6=tmpStr1&"?TB_iframe=true&height="&tmpStr3&"&width="&tmpStr2
strContent=replace(strContent,strMatch.Value,"<a href="""&tmpStr6&""" title="""&tmpStr5&""" class=""thickbox"">"&tmpStr4&"</a>",1,-1,0)
Next
re.Pattern = "\[Thickd=(.[^\]]*),(.[^\]]*),(.[^\]]*),(.[^\]]*)\](.[^\[]*)\[\/Thickd]"
Set strMatchs=re.Execute(strContent)
For Each strMatch in strMatchs
tmpStr1=checkURL(strMatch.SubMatches(0))
tmpStr2=strMatch.SubMatches(1)
tmpStr3=strMatch.SubMatches(2)
tmpStr4=strMatch.SubMatches(3)
tmpStr5=strMatch.SubMatches(4)
tmpStr6=tmpStr1&"?height="&tmpStr3&"&width="&tmpStr2
strContent=replace(strContent,strMatch.Value,"<a href="""&tmpStr6&"""? title="""&tmpStr5&""" class=""thickbox"">"&tmpStr4&"</a>",1,-1,0)
Next2、打开UBBconfig.asp文件,查找“flash,music,mediaplayer,realplayer,ed2k,”并在其后面插入“thickbox,”。查找“Tip="插入图像"”,并在其下一行插入:
复制内容到剪贴板
代码:
case "ThickBox":
Tip="插入ThickBox效果"3、打开UBBCode_IE.js文件,在文件最后加入:
复制内容到剪贴板
代码:
function UBB_ThickBox(){
popnew("ThickBox/thickbox.asp","ThickBox",500,480)
}4、最后打开UBBCode_Gecko.js文件,在文件最后加入:
复制内容到剪贴板
代码:
function UBB_ThickBox(){
popnew("ThickBox/thickbox.asp","ThickBox",500,480)
}使用是在UBB编辑模式下,点击“
插入ThickBox效果”的图片,并在弹出窗口中选择你所想加入的类型,可以是图片,图片组,以及网页等内容,并填写有关项目的内容,按提示完成操作即可!
注意:ThickBox效果不能与lightbox效果同时使用!!
[
本帖最后由 Cocacola 于 2007-5-5 13:43 编辑 ]