答案 0 :(得分:3)
它起源于“jquery.nivo.slider.pack.js”,更确切地说是抱怨element.data不是第67行的函数(Firebug是这种调试的一个很好的工具:-))。我不完全确定,但可能是因为你的html中有以下代码:
<script type="text/javascript">
$(window).load(function() {
$('#slider').nivoSlider();
});
</script>
$(window).load会在加载窗口时立即触发,此时可能是DOM中没有滑块div。因此,请尝试将其更改为:
<script type="text/javascript">
$(document).ready(function() {
$('#slider').nivoSlider();
});
</script>
这将确保DOM已经绘制并可供插件使用。此外,看起来插件需要一个'element'参数,而你传递none,这可能是element.data未定义的原因。为此,您可以尝试:
$('#slider').nivoSlider($(this));
希望其中一个适合你。
答案 1 :(得分:3)
如果任何人坚持使用同样的东西,不推荐使用live()替换为on(),你需要使用更新版本的nivo或旧版本的jquery,jquery-1.8.0可以正常工作。