为什么提示undefined is not a function 10
var formPanel=new Ext.Panel({
renderTo:"loginFrom",
id:"loginFrom",
title:"用户登录",
width:300,
height:200,
frame:true,
floating:true //表示该Panel是浮动的
});
var viewPort = new Ext.Viewport();
var loginFormX=(viewPort.getSize().width - loginFrom.getSize().width)/2;
var loginFormY=(viewPort.getSize().height - loginFrom.getSize().height)/2;
LoginFrom.setPosition(loginFormx,loginFormY);
});
还有我添加了floating:true后表单就不显示了 展开
这个问题是因为你调用的函数未定义;不过没有看到你的具体代码,你可能是以下情况:
的确是没有定义这么一个函数;
定义函数了,但是在你调用的时候,你的函数并没有初始化
要写出具体的语句才能帮你分析原因。
这句话“undefined is not a function” 说 undefined 不是一个函数。
如果程序中 你用 undefined 作为函数名,出现了: undefined ( 带小括号的形式,而前面未声明和定义过这个函数,就出错了。当然还有许多其它原因。
undefined 这个词英文意思是 “没有定义过”, 用这个做 变量和函数名 也是怪怪的。今天在做项目时,碰到了一个超奇怪的问题。我在html中的程序,跑的好好的,换成jsp在项目中跑,就一直报$ is not a function错。找了很久,试了很多,都没解决。后来,突然想到,将我引入的js文件的顺序换一下,将jquery的js文件第一个引入,别的js文件放到它后面。真的解决了问题!!!原来,,在页面加载时,顺序加载引入的文件。要是jquery的js文件不是第一个被引入,那么别的js中的$.方法名就会报错。只有先引入了jquery的js文件,才能正确执行$.方法。特此备份!
解决方法:
原因是在把原先一个较大的js文件拆分成多个小的js文件后,最后一行没有用分号结尾。大部分的jQuery脚本都用(jQuery)结尾,如果没有用分号断行,浏览器就不知道把连接起来了。加上(jQuery);后问题完美解决。
LoginFrom.setPosition(loginFormx,loginFormY);
这段提示的
那就是说你LoginFrom.setPosition(loginFormx,loginFormY);这个方法不存在。
LoginFrom是Ext提供的么?
不是LoginForm么?没打错么?