我有一个图像滑块(NivoSlider),它只会淡化我们网站上的一系列图像。它在主页上运行正常,代码如下:
INDEX.PHP的HEAD
<!-- Image Slider -->
<link rel="stylesheet" href="_ui/css/slider.css" type="text/css" media="screen" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script>
<script src="_ui/js/jquery.nivo.slider.pack.js" type="text/javascript"></script>
<script type="text/javascript">
$(window).load(function() {
$('.nivoSlider').nivoSlider({
effect:'fade', // Specify sets like: 'fold,fade,sliceDown'
slices:15, // For slice animations
boxCols: 8, // For box animations
boxRows: 4, // For box animations
animSpeed:500, // Slide transition speed
pauseTime:2000, // How long each slide will show
startSlide:0, // Set starting Slide (0 index)
directionNav:false, // Next & Prev navigation
directionNavHide:false, // Only show on hover
controlNav:false, // 1,2,3... navigation
controlNavThumbs:false, // Use thumbnails for Control Nav
controlNavThumbsFromRel:false, // Use image rel for thumbs
controlNavThumbsSearch: '.jpg', // Replace this with...
controlNavThumbsReplace: '_thumb.jpg', // ...this in thumb Image src
keyboardNav:true, // Use left & right arrows
pauseOnHover:false, // Stop animation while hovering
manualAdvance:false, // Force manual transitions
captionOpacity:0.8, // Universal caption opacity
prevText: 'Prev', // Prev directionNav text
nextText: 'Next', // Next directionNav text
beforeChange: function(){}, // Triggers before a slide transition
afterChange: function(){}, // Triggers after a slide transition
slideshowEnd: function(){}, // Triggers after all slides have been shown
lastSlide: function(){}, // Triggers when last slide is shown
afterLoad: function(){} // Triggers when slider has loaded
});
});
</script>
在INDEX.PHP中滑动幻灯片
<div class="nivoSlider">
<img src="_media/img/home_first_final.jpg" alt="" />
<img src="_media/img/home_second_final.jpg" alt="" />
<img src="_media/img/home_third_final.jpg" alt="" />
</div>
上述代码运行正常,可以查看here。
当我尝试在子内容页面上重复使用代码时,我收到以下错误:
[cycle] terminating; zero elements found by selector
Uncaught TypeError: Object [object Object] has no method 'nivoSlider'
(anonymous function)
c.event.handle
c.event.add.j.handle.o
我检查了子内容页面上的代码(示例页面here),代码现在与INDEX.PHP的HEAD完全相同,但DIV如下:
<div class="nivoSlider">
<img src="_media/img/services_first_final.jpg" alt="" />
<img src="_media/img/services_second_final.jpg" alt="" />
<img src="_media/img/services_third_final.jpg" alt="" />
</div>
知道出了什么问题吗?
答案 0 :(得分:5)
您正在第二页上加载jQuery两次。
你接近页面的末尾
<script type="text/javascript" src="_ui/js/jquery-1.5.min.js"></script>
答案 1 :(得分:1)
嗯,错误是告诉你某个对象上没有“nivoSlider”方法。
查看你的代码,它试图调用该方法的对象是:$('。nivoSlider')
当您加载子页面时,是否有可能存在nivoSlider类的项目不存在 - 或者是您不期望的内容?
或(FTW),它们不止一个......因此它返回一个数组(而不是单个对象),因此需要使用“each”运行
答案 2 :(得分:0)
我有同样的问题。
检查所有包含的脚本是否包含以下行:
jQuery.noConflict();
这会破坏使用$ jQuery别名的脚本。