Javascript TypeError:show不是一个函数

Javascript TypeError:show不是一个函数,javascript,jquery,Javascript,Jquery,我正在使用jQuery实现网站上的动态内容行为。我有一个错误: TypeError:$(“#id”).attr(“src”, thisContent.attr(“数据属性”).show不是一个函数 首先,我认为它与浏览器有关,但事实证明并非如此。错误在这一行: $('#id').attr('src', thisContent.attr('data-attr')).show(); 尝试以下方法 将数据属性重命名为其他名称 查看此contect.attr中是否存在数据attr 记录以下行并转到控制

我正在使用jQuery实现网站上的动态内容行为。我有一个错误:

TypeError:$(“#id”).attr(“src”, thisContent.attr(“数据属性”).show不是一个函数

首先,我认为它与浏览器有关,但事实证明并非如此。错误在这一行:

$('#id').attr('src', thisContent.attr('data-attr')).show();
尝试以下方法

将数据属性重命名为其他名称

查看此contect.attr中是否存在数据attr

记录以下行并转到控制台。在那里,您将看到数据属性不存在或位于错误的位置


console.log(此内容)

随机问题,但可以肯定的是

您是否通过他们的CDN访问jQuery

如果是,两台机器是否都以ok方式加载jQuery代码?两者都可以看到CDN而没有问题(都连接到internet)?jQuery代码的其他部分是否正常工作

浏览器在呈现/处理JS的方式上存在差异是非常罕见的,因为它是一种成熟的语言。因此,我的建议是,这不是一个基于浏览器的问题,而是代码之外的问题


只是一个想法。

如果
.attr()
的第二个参数是
未定义
则将调用getter。 似乎调用了getter而不是setter

吸气剂:

$(...).attr(String) // returns String which has no method .show()
塞特:

$(...).attr(String, String) // returns jQuery object, which has method .show()

thisContent.attr('data-attr')
在某些情况下可能返回
undefined
,因此会调用getter而不是所需的setter方法。

var thisContent=$(this).find('.content')
似乎只有fire fox版本出现问题您可以发布一段JSF代码吗?尝试将
$
更改为
jQuery
,看看问题是否仍然存在。我见过Firebug扩展(使用
$
作为选择器)会简单地覆盖jQuery的速记。虽然我无法推断出确切的原因。只是一个想法。尝试使用
jQuery
而不是
$
。。。我认为这可以解决兼容性问题