带有JQuery的php按钮链接
我有一个jquery文本旋转器,它使用PHP从数据库中旋转文本。 下面是一张图表: 文本的旁边有一个more info按钮,它将转到事件对应的页面(因此,如果其中一个旋转是“Example event”,那么如果包含“Example event”的行,more info按钮将转到event.php?id=6)的id为6。不幸的是,moreinfo.php按钮链接始终指向第一个旋转对应的页面(因此,如果第一个旋转是“示例事件”且“示例事件”的id为6,则“更多信息”按钮将始终链接到id为6的页面,即使是id为8的不同旋转,如“更好的事件” 谢谢你的帮助(我知道我的描述很混乱)。另外,如果你能告诉我问题是什么,你能稍微解释一下你的解决方案吗(我正在学习PHP,并发现我的问题解决方案帮助我学到了很多!)带有JQuery的php按钮链接,php,javascript,jquery,Php,Javascript,Jquery,我有一个jquery文本旋转器,它使用PHP从数据库中旋转文本。 下面是一张图表: 文本的旁边有一个more info按钮,它将转到事件对应的页面(因此,如果其中一个旋转是“Example event”,那么如果包含“Example event”的行,more info按钮将转到event.php?id=6)的id为6。不幸的是,moreinfo.php按钮链接始终指向第一个旋转对应的页面(因此,如果第一个旋转是“示例事件”且“示例事件”的id为6,则“更多信息”按钮将始终链接到id为6的页面
这是旋转代码:
<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>
(函数($){
$.fn.extend({
//插件名称-旋转器
旋转器:功能(选项){
var默认值={
fadeSpeed:600,
暂停速度:100,
子项:空
};
var options=$.extend(默认值,选项);
返回此值。每个(函数(){
var o=期权;
var obj=$(本);
变量项=$(obj.children(),obj);
items.each(函数(){$(this.hide();})
if(!o.child){var next=$(obj).children(':first');
}else{var next=o.child;
}
$(next).fadeIn(o.fadeSpeed,function(){
$(下一步).delay(o.pauseSpeed).fadeOut(o.fadeSpeed,function()){
var next=$(this.next();
如果(next.length==0){
next=$(obj).children(':first');
}
$(obj).rotaterator({child:next,fadeSpeed:o.fadeSpeed,pauseSpeed:o.pauseSpeed});
})
});
});
}
});
})(jQuery);
$(文档).ready(函数(){
$(#rotate')。旋转器({fadeSpeed:1200,pauseSpeed:6000});
});
有几种解决方案,例如:
活动类,并仅显示该类
虽然第二个选项会产生更多的html,但我有点喜欢所有页面的真实链接。当您创建rotate div时,您可以向每个循环添加隐藏字段,以保存每个迭代的
id
<div id="rotate">
<?php
$index = 0;
while ($row = mysql_fetch_assoc($result)) {
$id = $row['id'];
echo "<font>".$row['tag']."</font>";
echo "<input type='hidden' id='rotate_".$index."' value='$id' />";
$index++;
}?>
</div>
我看不到上面的
的旋转代码。你应该在旋转时触发更改事件链接的href。因此,我们需要你代码的旋转部分。我已经拥有的按钮是否有任何更改?我是否要取下?我建议去掉按钮并将你的锚定标记样式设置为按钮。
<div id="rotate">
<?php
$index = 0;
while ($row = mysql_fetch_assoc($result)) {
$id = $row['id'];
echo "<font>".$row['tag']."</font>";
echo "<input type='hidden' id='rotate_".$index."' value='$id' />";
$index++;
}?>
</div>
var newLinkID = $('#rotate_' + index).val();
$('.grid_2 a').attr('href', 'events.php?id=' + newLinkID);