在我的主页上,我通过 jquery 调用了一个 ajax 文件,在该 ajax 文件中是一些额外的 jquery 代码。原始链接如下所示:
<a href="/page1.php" class="guest-action notify-function"><img src="/icon1.png"></a>
然后代码:
$(document).ready(function(){
$('a[rel*=facebox]').facebox();
$('.guest-action').click( function() {
$.get( $(this).attr('href'), function(responseText) {
$.jGrowl(responseText);
});
return false;
});
$('.notify-function').click( function() {
$(this).find('img').attr('src','/icon2.png');
$(this).attr('href','/page2.php');
$(this).removeClass('guest-action').removeClass('notify-function').attr('rel','facebox');
});
});
所以基本上在单击通知功能后,我正在更改链接的图标和 url,然后我将删除类,以便不会再次运行单击并将 rel="facebox" 添加到链接中,以便 facebox 窗口将如果他们尝试单击出现的新 icon2.png,则会弹出。问题是在我单击初始图标后一切正常,除非我尝试单击新的 icon2.png 它仍然执行来自来宾操作的 jgrowl 代码。但是当我查看源代码时,它会显示:
<a href="/page2.php" rel="facebox" class=""><img src="/icon2.png"></a>
所以看起来应该可以正常工作吗?我究竟做错了什么?我尝试将facebox代码添加到调用ajax文件的主页中,但仍然是同样的问题。