在点击“查看活动”文本时,我无法顺利滑动div。我希望实现的目标是:
真正发生的事情
第一次如何让它顺利滑动并在发生这种情况时顺利加载内容?我怀疑这与滑动时改变div的内容有关,但我不知道如何解决它。
的 HTML 的
<div class="listing_activity_container">
<span style="cursor: pointer;" class="listing_activity_link <?php echo $listing->listing_id ?>">View Activity</span>
<div class="activityContent_<?php echo $listing->listing_id ?>"></div>
</div>
的 JQUERY 的
<script>
$(document).ready(function(){
$(".listing_activity_link").click(function() {
var listing_id = $(this).attr('class').split(' ')[1]
var url = "<?php echo site_url('AJAX/ajax_default/listing_activity_seller'); ?>";
$(".activityContent_"+listing_id).slideToggle();
$(".activityContent_"+listing_id).html('Loading...');
$.post(url, {listing_id: listing_id} ,function(data) {
$(".activityContent_"+listing_id).html(data);
});
});
});
</script>
答案 0 :(得分:2)
使用animate
并注册complete callback:
$(".activityContent_"+listing_id).animate({"height":100}, { complete: function(){
$(".activityContent_"+listing_id).html('Loading...');
...
}});
此代码将在动画结束后执行。
答案 1 :(得分:0)
我认为slideToggle不是您要寻找的功能......
如果要将div打开到设定的高度,我会使用
$(".activityContent_"+listing_id).animate({"height":100});
并添加一些检测,以便在关闭div时不会尝试加载ajax