对使用jquery从ajax响应获得的dom元素使用淡出效果

时间:2014-08-23 19:07:50

标签: jquery ajax

我在5秒内调用jquery ajax请求到php脚本,它构建并返回html表。然后我把退回的表放到我的网页上的div。然后用户点击网页上的表格行(此表是从ajax请求获得的),我想淡出这一行。

怎么做?

// put data to prepared div obtained from ajax request
var divid="#tabloidOutput";
function refreshdiv() {
var jqxhr = $.ajax({ 
                url: "data/output.php",
                cache: false
            })
    .done(function(msg) {
    // msg contains <table>...</table>
        $(divid).html(msg);
        setTimeout('refreshdiv()', seconds * 1000);
    })
}

//webpage structure
<body>
<div id="tabloidOutput"></div>
</body>

// row fading out
$( "tr" ).click(function() {
  $(this).fadeOut( "slow" );
});

2 个答案:

答案 0 :(得分:2)

使用on()在动态生成的内容上注册事件

$('tr').on('click', function(){
    $(this).fadeOut('slow');
});

jsFiddle Example

答案 1 :(得分:0)

要点击一个元素(在您的情况下为td

 $( "#tdname" ).on('click',function() {
      $( this ).fadeOut( "slow" );
    });

有关详情,请参阅fadeOut()