Javascript函数未定义但在源代码中

时间:2011-08-26 05:09:56

标签: javascript dreamweaver

此音乐site在Chrome和firebug中将Dreamweaver函数MM_timelinePlay显示为未定义,但它在标题中明确定义。标题是动态引入的,但这应该无关紧要,因为它已经加载了时间触发它。该函数在标记为“more”的按钮的悬停状态下调用。

enter image description here

1 个答案:

答案 0 :(得分:1)

第62行的代码如下(在MM_initTimelines的函数体内): px“,”4px“);

这是在解析JS时触发JavaScript错误,因为MM_timelinePlay在解析错误之后,该函数实际上不可供页面使用。不确定第62行应该是什么,但看起来该行在过程中某处被碾磨(可能是复制和粘贴错误的一部分,或者是编辑错误的一部分)。

您可以通过使用第62行所属的if语句的else分支来恢复该行,这里是: document.MM_Time [0] [0] .values [0] = new Array(-141,-131,-120,-110,-100,-89,-79,-69,-58,-48,-37 ,-27,-17,-6,4);

将第62行更改为以下内容: document.MM_Time [0] [0] .values [0] = new Array(“ - 141px”,“ - 131px”,“ - 120px”,“ - 110px”,“ - 100px”,“ - 89px”,“ - 79px”, “ - 69px”, “ - 58px”, “ - 48像素”, “ - 37px”, “ - 27px”, “ - 知识+”, “ - 6像素”, “4像素”);

确保一切都在一条线上。所做的编辑只是用“然后包括px来包装数组的每个值。基于对MM_initTimelines函数的搜索,匹配的代码行(根据定义的特定运动而不同,if语句的真正分支)你的代码应该匹配else,除了值是添加了px单位的字符串。

由于时间轴不再是Dreamweaver的一部分(我认为从CS5中移除,但可能更为清晰),如果您使用的是较新版本的Dreamweaver,则无法恢复或编辑时间轴,因此请保留旧版本一个人。