我正在尝试为 ASP.Net 超链接的背景设置动画,以在更新面板刷新时进行黄色淡化。到目前为止,它几乎一直都在工作,但偶尔会抛出一个 javascript 错误“无效的属性值”。并将其调试到该行的jquery颜色插件代码中...
fx.elem.style[attr] = "rgb(" + [
Math.max(Math.min(parseInt((fx.pos * (fx.end[0] - fx.start[0])) + fx.start[0]), 255), 0),
Math.max(Math.min(parseInt((fx.pos * (fx.end[1] - fx.start[1])) + fx.start[1]), 255), 0),
Math.max(Math.min(parseInt((fx.pos * (fx.end[2] - fx.start[2])) + fx.start[2]), 255), 0)
].join(",") + ")";
这是目前正在发生的事件的顺序......
首先,窗口在 doc.ready 上加载,它会注册一个事件,以便在更新面板完成刷新时执行,如下所示......
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(yellowFade);
其中 yellowFade 被定义为...
function yellowFade() {
window.setTimeout("$('#' + hyperlinkUrlId).animate( { backgroundColor: 'white' }, 2000)", 2000);
window.clearTimeout();
}
现在,我很少在此时崩溃,但通常是稍后,所以我会继续......
然后我单击一个标题为“生成”的按钮,该按钮创建一个 URL 加载 ASP.Net 超链接及其创建的 URL 的文本,然后通过 javascript 将其背景颜色设置为黄色以通过此淡出...
$("#" + hyperlinkUrlId).css("background-color", "#FBFF9C");
我最初让它通过这个代码在后面的代码中设置颜色......
Url.BackColor = ColorTranslator.FromHtml("#FBFF9C");
但是后来我想也许背景颜色被设置为jquery颜色插件无法识别的东西,或者因为它被设置在服务器端,插件无法访问它的样式或其他东西,但改变它仍然没有对修复错误的影响。
最后, generate 将 URL 的背景颜色从白色更改为黄色,然后正如我所说,大多数情况下它会很好地消失,但很少会抛出错误“无效的属性值”。
据我所知,我的语法正是使用彩色动画的方式。我觉得我使用更新面板的事实可能会在这里造成严重破坏,但我不确定。
有没有人对可能导致这种事情的原因有任何见解?尝试调试确实是一团糟,因为它很少发生,而忽略了javascript已经很难调试的事实。
在 Windows Vista 上使用 jquery 1.3.1 和 jquery.color 1.0。使用 Visual Studio 2008。让我知道是否有什么可以清理的。
编辑:当当,还没有一个回应。我在这方面工作了一段时间,但我刚刚在我的应用程序的另一部分发现了这个错误,我正在做黄色渐变。这两个页面都使用更新面板。在很多情况下,我不喜欢更新面板,它肯定对我的 jquery 造成了严重破坏。我想知道这是否与此有关。哦,这有点暗示整个 Vista 的事情,但我会指出我在 IIS7 上运行。
这会引起任何见解吗?