我需要每分钟运行一次函数createChartControl。每次执行函数时,都应更新 DIV 容器甘特迪夫的内容。问题是函数createChartControl只执行一次。如何正确添加计时器?
<script type="text/javascript" language="JavaScript">
function createChartControl(htmlDiv1)
{
// ...
}
(function(){
createChartControl('GanttDiv');
})();
</script>
<script>
$(document).ready(function() {
$("#GanttDiv").(function(){
createChartControl('GanttDiv');
})();
var refreshId = setInterval(function() {
$('#GanttDiv').fadeOut("slow", function () {
$(this).(function(){
createChartControl('GanttDiv');
})().fadeIn("slow");
});
}, 60000);
$.ajaxSetup({ cache: false });
});
</script>
<div style="width:100%; height:350px; position:relative" id="GanttDiv" class="GanttDiv"></div>
您的setInterval
似乎是正确的,但您在第一次执行时遇到错误。试试这个:
var refreshId = setInterval(function() {
$('#GanttDiv').fadeOut("slow", function () {
createChartControl('GanttDiv');
$(this).fadeIn("slow");
});
}, 60000);
此外,如果您已经将 id 传递给 createChartControl
函数,则无需执行此操作(使用未修改的 jQuery 也无效):
$("#GanttDiv").(function(){
createChartControl('GanttDiv');
})();
你可以做
createChartControl('GanttDiv');