2011-06-28 48 views
1

我仍在试图找出需要在SharePoint 2007中显示的此幻灯片任务。在我的其他帖子中,人们建议做的事情更具挑战性, m不愿意或有技能承担。所以我在这里可能是一个更简单的解决方案,但它也不起作用。代码在内容编辑器Web部件中不起作用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()); 
} 

我试图把一切都在网页组件。我也将JavaScript放在它自己的文件中,放在我应用程序根目录下的脚本目录中,并且像这样调用它。我也复制了/ _layout/1033目录,但这些步骤都没有帮助。

谢谢你的时间!

+0

由于某些原因,第二组代码未显示所有脚本。右大括号后,我有这样的: Slides Risho

回答

2

<script runat="server" > 您不能在内容编辑Web部件中执行服务器端代码。

+0

嗯,这是很好的了解。我以为我在想我。感谢您指出明显。 – Risho

相关问题