【发布时间】:2011-09-24 11:48:38
【问题描述】:
我仍在尝试找出我需要在 SharePoint 2007 中显示的幻灯片任务。在我的其他帖子中,人们建议做一些我不愿意或没有技能承担的更具挑战性的事情。所以我在这里所拥有的可能是一个更简单的解决方案,但它也不起作用。
我正在使用一个内容编辑器 Web 部件,我将在独立网站中有效但不在此处的代码复制到其中。
我希望您能告诉我这是否可行并提出修复建议,还是我应该将其全部废弃并接受之前的挑战。
在 default.master 我有这样的 Javascript:
<script language="javascript" type="text/javascript">
<!--
var slideimages=new Array()
var slidelinks=new Array()
function slideshowimages(){
for (i=0;i<slideshowimages.arguments.length;i++){
slideimages[i]=new Image()
slideimages[i].src=slideshowimages.arguments[i]
}
}
function slideshowlinks(){
for (i=0;i<slideshowlinks.arguments.length;i++)
slidelinks[i]=slideshowlinks.arguments[i]
}
function gotoshow(){
if (!window.winslide||winslide.closed)
winslide=window.open(slidelinks[whichlink])
else
winslide.location=slidelinks[whichlink]
winslide.focus()
}
//-->
然后在内容编辑器 web 部件中我有这个:
<script runat="server" >
protected void Page_Load(object sender, EventArgs e)
{
int iCounter = 0;
string path = Server.MapPath("/Bulletin/");
System.IO.DirectoryInfo di = new System.IO.DirectoryInfo(path);
System.IO.FileInfo[] slides = di.GetFiles("*.jpg");
iCounter = slides.Length;
string mystring = string.Empty;
int i = 0;
foreach (System.IO.FileInfo file in slides)
{
if (i < iCounter-1)
{
mystring += "'/Bulletin/" + slides[i].ToString() + "',";
i++;
}
else
{
mystring += "'/Bulletin/" + slides[i].ToString() + "'";
}
}
String scriptString = @"<script language=JavaScript>";
scriptString += @"slideshowimages(" + mystring + @")
slideshowlinks() // Still need to build this up
var slideshowspeed = 10000
var whichlink = 0
var whichimage = 0
function slideit() {
if (!document.images)
return
document.images.slide.src = slideimages[whichimage].src
whichlink = whichimage
if (whichimage < slideimages.length - 1)
whichimage++
else
whichimage = 0
setTimeout('slideit()', slideshowspeed)
}
slideit()
";
scriptString += @"</";
scriptString += @"script>";
if (!this.IsStartupScriptRegistered("clientScript"))
this.RegisterStartupScript("clientScript", scriptString.ToString());
}
我已尝试将所有内容都放在 Web 部件中。我还将 JavaScript 放在它自己的文件中,放在我的应用程序根目录中的脚本目录中,并像这样调用它。我还复制了 /_layout/1033 目录,但这些步骤都没有帮助。
感谢您的宝贵时间!
【问题讨论】:
-
由于某种原因,第二组代码没有显示所有的脚本。在结束大括号之后我有这个:cript>
iv>
标签: c# javascript sharepoint-2007