Javascript 属性';$。fn.切换高度和不透明度';对象的属性[object object]不是函数
我尝试调用一个变量函数名,在使用类似的代码之前,我已经多次这样做了 但是我一直得到Javascript 属性';$。fn.切换高度和不透明度';对象的属性[object object]不是函数,javascript,jquery,websocket,typeerror,Javascript,Jquery,Websocket,Typeerror,我尝试调用一个变量函数名,在使用类似的代码之前,我已经多次这样做了 但是我一直得到未捕获的TypeError:object[object object]的属性'$.fn.toggleHeightAndOpacity'不是函数,即使从我的WebSocket服务器返回的JSON是{“function”:“$.fn.toggleHeightAndOpacity”,“id”:“container”,“parameters”:true,“type”:“function” 容器存在于我的html中,jQue
未捕获的TypeError:object[object object]的属性'$.fn.toggleHeightAndOpacity'不是函数
,即使从我的WebSocket服务器返回的JSON是{“function”:“$.fn.toggleHeightAndOpacity”,“id”:“container”,“parameters”:true,“type”:“function”
容器
存在于我的html中,jQuery已加载
如何解决这个问题?可以使用点或括号表示法访问对象,因此这两者是相同的
object.key
object['key']
$('#element').fadeIn();
$('#element')['fadeIn']();
由于jQuery选择器和方法是对象,就像javascript中的其他东西一样,它们可以以相同的方式访问,因此这两者是相同的
object.key
object['key']
$('#element').fadeIn();
$('#element')['fadeIn']();
这意味着可以通过这两种方法访问插件
$('#'+data.id)['toggleHeightAndOpacity'](parameters);
$('#'+data.id).toggleHeightAndOpacity(parameters);
因此,如果从服务器返回的数据确实是
{"function":"$.fn.toggleHeightAndOpacity", ...
你真的在做什么
$('#'+data.id)['$.fn.toggleHeightAndOpacity'](parameters)
这看起来不对,应该是这样的
$('#'+data.id)['toggleHeightAndOpacity'](parameters)
因此,将服务器端代码更改为不带$的输出函数名。fn
使用
function
作为键看起来有点可疑,因为它在javascript中是一个保留关键字,所以我会养成不命名键或变量的习惯function
非常感谢!谢谢你的提示,不要使用关键字!你介意把我的错误也贴出来吗?我不明白为什么。提前非常感谢您!绝对漂亮!谢谢大家!!