0

我在每个页面的页脚都有一个链接“全屏显示”。在 document.ready() 中,我有一个代码需要在单击此链接时执行。还有另外两个链接通过 $.ajax 调用从该页面上的下一页和上一页获取内容。内容加载正常,但是一旦处理了 ajax 调用,“go fullscreen”链接就会停​​止工作。本质上,它在 document.ready() 中的点击事件不会被调用。如何使位于 document.ready() 中的代码即使在 ajax 调用之后也始终有效。

代码

$.ajax({
    url: $j('#prev a').attr('href'),
    success: function(data) {
                data=$j(data).find('.container > .row');
                $j('.container').html(data);
                $j("#go-fullscreen").bind('click');
             }
    });
4

2 回答 2

2

当你这样做时;

$j("#go-fullscreen").bind('click');

您没有绑定到任何特定的事件处理函数,因此单击时不会发生任何事情。您需要指定单击时要执行的功能。有关详细信息,请参阅jQuery 文档

$j("#go-fullscreen").bind('click', function() { /* your code here */});
于 2012-10-10T23:17:58.003 回答
1

由于您根本没有发布任何代码,因此我正在做出一些假设。听起来您正在动态加载/更改页脚内容。听起来您也正在使用以下方式连接点击:

$('a').click(function() { //... });

如果这一切都是真的,你想改变你对事件的连接方式。查看.on

$('.container').on('click', '#go-fullscreen', function() { //... });

于 2012-10-10T23:10:45.457 回答