1

我想问一下如何使图像按时间间隔更改(比如说 5 秒后),并且这些相同的图像会根据链接的悬停而更改(类似于 www.gamespot.com 之类的网站)。我有这些链接:

<ul class="ul1">
<li class="li1"><a class="link1" title="CRM" href="http://link1" target="_self">CRM</   a><li>                                                                     
<li class="li1"><a class="link1" title="Apskaita ir finansai" href="http://link2" target="_self">Apskaita ir finansai</a></li>
<li class="li1"><a class="link1" title="Darbo užmokestis" href="http://link3" target="_self">Darbo užmokestis</a></li>
<li class="li1"><a class="link1" title="Kasos terminalas" href="http://link4" target="_self">Kasos terminalas</a></li>
</ul>

好的,所以到目前为止我已经设法创建了这个:所以 jquery 看起来像这样:

function swapImages(){
var $active = $('#gallery1 .active');
var $next = ($('#gallery1 .active').next().length > 0) ? $('#gallery1 .active').next() : $('#gallery1 img:first');
$active.fadeOut(function(){
$active.removeClass('active');
$next.fadeIn().addClass('active');
});
}
$(document).ready(function(){
  // Run our swapImages() function every 5secs
  setInterval('swapImages()', 5000);
}

我将我的 .js 文件添加到“wp-includes/js/jquery”中。我打开 header.php 并在“head”标签内添加:

<?php wp_enqueue_script("jquery"); ?>

<?php wp_head(); ?>
<script type="text/javascript" src="/wp-includes/js/jquery/image-on-time.js"></script> /*my .js function*/

CSS 样式:

#gallery1{
float:right;
width:400px; 
height:300px; 
}
#gallery1 img{
    display:none;
    position:absolute;

}
#gallery1 img.active{
    display:block;
}

我页面上的 html 语法:

<div id="gallery1">
 <article>
<img src="img1.jpg" class="active"/>
<img src="img2.jpg"/>
<img src="img3.jpg"/>
 </article>

所以在这样做之后,第一张图片出现了,没有其他任何事情发生。我在加载 .js 文件时做错了什么还是有其他问题?


所以我读到,jquery 可能通过使用'$' 与其他脚本冲突。所以我改变了这样的功能:

var $j = jQuery.noConflict();
$j(function swapImages(){
var $j(active) = $j('#gallery1 .active');
var $j(next) = ($j('#gallery1 .active').next().length > 0) ? $('#gallery1 .active').next  () : $j('#gallery1 img:first');
$j(active).fadeOut(function(){
$j(active).removeClass('active');
$j(next).fadeIn().addClass('active');
  });
}
  $j(document).ready(function(){
  // Run our swapImages() function every 5secs
  setInterval('swapImages()', 5000);
   });

我什至改变了 .js 的调用方式:

 <script type="text/javascript" src="<?php bloginfo('template_url'); ?>/wp-includes/js/jquery/image-on-time.js"></script>

但没有任何改变.. 谁能告诉我我做错了什么?.. 所以没有人对 wordpress 有一点了解吗?

4

1 回答 1

0

使用单词 'jQuery' 而不是 $ 符号,并调用 jQuery.noConflict();

于 2012-08-13T14:13:22.893 回答