gpt4 book ai didi

javascript - bxSlider 在 2 天前停止工作,没有代码更改

转载 作者:太空宇宙 更新时间:2023-11-03 18:26:42 25 4
gpt4 key购买 nike

我一直在努力解决这个问题。我们在 SharePoint 2013 主页中实现了 bxslider。这项工作是由我现在离职的同事完成的,所以不是我的工作,但是......它已经完成并且正在工作。

虽然我在调用 slider.goToNextSlide() 的 onSliderLoad 回调函数时遇到运行时错误;

从调试输出窗口 VS 中提取:0x800a138f - JavaScript 运行时错误:无法获取未定义或空引用的属性“goToNextSlide”

我几乎排除了代码更改的可能性,因为我已经将源代码恢复到几个月前,并将非常旧的快照恢复到虚拟 SharePoint 服务器中。这些都仍然遇到相同的新问题。我还在我们的暂存服务器上尝试了这个技巧,该服务器已经有一段时间没有任何新发布的代码了。该主机现在遇到同样的问题。我唯一能想到的是有一个外部变化导致了这个问题,但我不知道是什么。

我从 Firebug 和 IE10 得到不同的错误(它是 SharePoint,你也必须在 IE 中测试和调试 ;-))

Firebug Errors

enter image description here

从 FeedsRotator.ascx 中提取(Home.aspx 上的 Webpart)

var slider= $('#slider2').bxSlider({
auto: true,
controls: false,
pager:false,
pause: 10000,
slideWidth: (sir ? sirina:300),
slideHeight: 450,
randomStart: true,
autoHover: true,
onSliderLoad: function (currentIndex) {
slider.goToNextSlide(); //This is line 1024
},

从 BxSlider.css 中提取

#slider1 {
margin:0;
padding:0;
}

.bx-wrapper {
position: relative;
margin: 10px;
padding: 0;
*zoom: 1;
}

.bx-wrapper img {
max-width: 100%;
display: block;
}

忘了说我们使用的是 jquery 1.9.1。

最佳答案

所以,我完全用客户端代码找错了树。事实上,填充新闻 slider 的公告列表元素已在 5 天前过期。

news list item 1因此,是 Web 部件上的服务器端代码查询未返回任何数据的列表:

string Qry = " <Where><Geq><FieldRef Name='Expires' /><Value IncludeTimeValue='FALSE' Type='DateTime'>{0}</Value></Geq></Where>";

protected void Page_Load(object sender, EventArgs e)
{

if (!((Page)System.Web.HttpContext.Current.CurrentHandler).IsPostBack)
{
DisplayAnnouncements();
}
}
private void DisplayAnnouncements()
{
SPSecurity.RunWithElevatedPrivileges(delegate()
{
using (SPSite site = new SPSite(SPContext.Current.Site.ID))
{
using (SPWeb web = site.OpenWeb(SPContext.Current.Web.ID))
{
SPList list = web.Lists["Announcements"];
SPQuery query = new SPQuery();
query.RowLimit = 10;
query.Query = string.Format(Qry, DateTime.Now.ToString("yyyy-MM-dd"));


rep1.DataSource = list.GetItems(query).GetDataTable();
rep1.DataBind();

}
}
}
);
}

所以现在我必须决定如何处理这个

选项 1(查找最近过期的公告):

private void DisplayAnnouncements()
{
SPSecurity.RunWithElevatedPrivileges(delegate()
{
using (SPSite site = new SPSite(SPContext.Current.Site.ID))
{
using (SPWeb web = site.OpenWeb(SPContext.Current.Web.ID))
{
SPList list = web.Lists["Announcements"];
SPQuery query = new SPQuery();
query.RowLimit = 10;
DateTime queryDate = DateTime.Now;

query.Query = string.Format(Qry, queryDate.ToString("yyyy-MM-dd"));

while (list.GetItems(query).Count == 0 && queryDate > new DateTime(2000, 1, 1)) //Stop an infinitive loop where list is empty
{
TimeSpan oneDay = new TimeSpan(1, 0, 0, 0);
queryDate = queryDate - oneDay;
query = new SPQuery() { Query = string.Format(Qry, queryDate.ToString("yyyy-MM-dd")) };
}

rep1.DataSource = list.GetItems(query).GetDataTable();
rep1.DataBind();

}
}
}
);
}

选项 2(显示无新闻)

private void DisplayAnnouncements()
{
SPSecurity.RunWithElevatedPrivileges(delegate()
{
using (SPSite site = new SPSite(SPContext.Current.Site.ID))
{
using (SPWeb web = site.OpenWeb(SPContext.Current.Web.ID))
{
bool oldAllowUnsafeUpdates = web.AllowUnsafeUpdates;
web.AllowUnsafeUpdates = true;
web.Update();

SPList list = web.Lists["Announcements"];
SPQuery query = new SPQuery();
query.RowLimit = 10;
DateTime queryDate = DateTime.Now;

query.Query = string.Format(Qry, queryDate.ToString("yyyy-MM-dd"));

if (list.GetItems(query).Count == 0)
{
SPListItem noNewsListItem = list.AddItem();

noNewsListItem["Title"] = "NoCurrentNews";
noNewsListItem["MainDisplayImage"] = "<img src=\"/sites/OMGIntranet/SiteAssets/NO-CURRENT-NEWS-STORIES.jpg\"></img>";
noNewsListItem["Expires"] = DateTime.MaxValue;

noNewsListItem.Update();
}

rep1.DataSource = list.GetItems(query).GetDataTable();
rep1.DataBind();

web.AllowUnsafeUpdates = oldAllowUnsafeUpdates;
}
}
}
);
}

关于javascript - bxSlider 在 2 天前停止工作,没有代码更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20640473/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com