我有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*/}
使表正常工作,因为函数是在内容加载后运行的。我做错了什么?
-
$('#div1').delay(200).slideUp('slow', function(){ $(this).load('page2.php #div2').hide().delay(300).slideDown('slow'); });
在滑动完成后再做加载功能。 -
var newTable = document.getElementById('tableId');
-不要在getElementById
中添加标签