Javascript TypeError:show不是一个函数
我正在使用jQuery实现网站上的动态内容行为。我有一个错误: TypeError:$(“#id”).attr(“src”, thisContent.attr(“数据属性”).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 记录以下行并转到控制
$('#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
而不是$
。。。我认为这可以解决兼容性问题