PHPを使用してデータベースから取得したテキストを回転させるjqueryテキストローテーターがあります。これが図です:
次に、テキストの横に、イベントに対応するページに移動する詳細ボタンがあります(したがって、ローテーションの1つが「サンプルイベント」の場合、詳細ボタンはevent.php?id= 6に移動します。 「サンプルイベント」のIDを含む行は6です。残念ながら、moreinfo.phpボタンのリンクは常に最初のローテーションに対応するページに移動します(したがって、最初のローテーションが「サンプルイベント」で、「サンプルイベント」のIDが6の場合、 [詳細]ボタンは、id = 8の「より良いイベント」のように別のローテーションの場合でも、id=6のページに常にリンクされたままになります。
助けてくれてありがとう(これは私の説明がかなり混乱していることを私は知っています)。また、問題が何であるかがわかる場合は、解決策を少し説明していただけますか(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>