jQuery .load transition and sorttable.js



我有jQuery:

$("#loadBtn").click(function(){
    $('#div1').delay(200).slideUp('slow')
        .load
        ('page2.php #div2').hide().delay(300).slideDown('slow');
        return false;
    });

当#loadBtn(位于我的#leftColumn)被点击,它取代#div1与#div2完美。这段代码有两个问题。

1) SOLVED BY GINCHER ----我无法让函数向上滑动#div1。它总是会瞬间淡出并向下滑动#div2。
如果我使用jQuery:

$("#loadBtn").click(function(){
    $('#div1').delay(200).slideUp('slow')
});

代码将完美地滑动#div1,但是一旦我添加.load('page2.php #div2'),它就会在滑动之前断开并消失。

2) SOLVED BY GINCHER ----我无法使用sorttable.js来排序#div2中的表
我意识到加载时在page1.php上运行的脚本不能应用于通过AJAX加载的元素。

我尝试在加载函数完成后调用新表,

$('#div1').load('page2.php #div2', function() {
    var newTable = document.getElementById('#tableId');
    sorttable.makeSortable(newTable);
});

但这不起作用。为了看看会发生什么,我将整个sorttable.js内容粘贴到

中。
$('#div1').load('page2.php #div2', function() { /*sorttable.js content*/}

使表正常工作,因为函数是在内容加载后运行的。我做错了什么?

  1. $('#div1').delay(200).slideUp('slow', function(){ $(this).load('page2.php #div2').hide().delay(300).slideDown('slow'); });在滑动完成后再做加载功能。

  2. var newTable = document.getElementById('tableId'); -不要在getElementById中添加标签

最新更新