我有一个 jquery 文本旋转器,它使用 PHP 旋转从数据库中提取的文本。这是一个图表:
然后,文本的一侧有一个更多信息按钮,该按钮将转到事件的相应页面(因此,如果其中一个旋转是“示例事件”,那么更多信息按钮将转到 event.php?id= 6如果包含“示例事件”的 id 的行是 6。不幸的是,moreinfo.php 按钮链接总是转到第一个旋转对应的页面(所以如果第一个旋转是“示例事件”并且“示例事件”的 id 为 6,那么更多信息按钮将始终链接到 id=6 的页面,即使它的轮换不同,例如 id=8 的“更好的事件”。
感谢您的帮助(我知道我的描述很混乱)。另外,如果你能说出问题所在,你能解释一下你的解决方案吗(我正在学习 PHP 并找到解决我遇到的问题的方法可以帮助我学到很多东西!)
<div id="rotate">
<?php
while ($row = mysql_fetch_assoc($result)) {
$id = $row['id'];
echo"
<font>
".$row['tag']."
</font>";
}?>
</div>
</div>
<div class='grid_2'><a href='events.php?id=<?php echo $id;?>'><button id='eventinfo'>event info »</button></a></div>
这是旋转代码:
<script type="text/javascript">
(function($){
$.fn.extend({
//plugin name - rotaterator
rotaterator: function(options) {
var defaults = {
fadeSpeed: 600,
pauseSpeed: 100,
child:null
};
var options = $.extend(defaults, options);
return this.each(function() {
var o =options;
var obj = $(this);
var items = $(obj.children(), obj);
items.each(function() {$(this).hide();})
if(!o.child){var next = $(obj).children(':first');
}else{var next = o.child;
}
$(next).fadeIn(o.fadeSpeed, function() {
$(next).delay(o.pauseSpeed).fadeOut(o.fadeSpeed, function() {
var next = $(this).next();
if (next.length == 0){
next = $(obj).children(':first');
}
$(obj).rotaterator({child : next, fadeSpeed : o.fadeSpeed, pauseSpeed : o.pauseSpeed});
})
});
});
}
});
})(jQuery);
$(document).ready(function() {
$('#rotate').rotaterator({fadeSpeed:1200, pauseSpeed:6000});
});
</script>