【问题标题】:Reload the content of a div afer regular interval of time在固定的时间间隔后重新加载 div 的内容
【发布时间】:2012-11-21 21:48:15
【问题描述】:

我想在固定时间间隔后重新加载 div (Recent_updates) 的内容。我使用了以下 javascript 代码

var refreshId = setInterval(function()
    {
        $('#Recent_updates').fadeOut("slow").load('Recent_updates.php').fadeIn("slow");
    }, 60000);

Recent_updates.php

<?php
include("include/connect.php");
include("library/paginator.php");
?>
<div style="text-align:right;">
    <?
    $query = "select * from settings";
    $tab = mysql_query($query);
    $row = mysql_fetch_array($tab);
    $item_no = $row['items_to_show'];
    $scroll = $row['scroll_interval'];

    $online_paginate = new Paginator;
    $online_paginate->sql = "select * from recent_updates where status='Active' and picture1!='' and selling_method!='want_it_now' and selling_method!='ads' and bid_starting_date <= now() and expire_date>=now() order by item_id desc"; // sql statement
    $online_paginate->rows_on_page = $item_no;
    $results = $online_paginate->get_page_result(); // result set
    $num_rows = $online_paginate->get_page_num_rows(); // number of records in result set
    $nav_links = $online_paginate->navigation("&nbsp; | &nbsp;"); // the navigation links (define a CSS class
    ?>
</div>

<table width="100%" border="0" cellspacing="0" cellpadding="0">
    <tr bgcolor="#d79196" class="detail9txt">
    <input type="hidden" value="2" name="len">
    <td align="center" width="20%"><b>Picture</b> </td>
    <td width="30%" align="center"><b>Name / Responses</b> </td>
    <td width="50%" align="center"><b>Description</b> </td>
</tr><tr style="height:10px;"><td></td></tr>
<?
if ($num_rows > 0) {
    while ($bestsellers_fetch = mysql_fetch_array($results)) {
        $temp = $bestsellers_fetch['item_id'];
        $sql = "SELECT count(`user_id`) as response FROM `watch_list` where `item_id`=$temp group by `item_id`";
        $res = mysql_query($sql);

        $response = mysql_fetch_row($res);

        $counttop = $counttop + 1;
        if (!empty($bestsellers_fetch['sub_title']))
            $item_subtitle1 = $bestsellers_fetch['sub_title'];
        else
            $item_subtitle1 = substr($bestsellers_fetch['item_title'], 0, 20);
        $item_title1 = substr($bestsellers_fetch['item_title'], 0, 40)
        ?>
        <tr>
            <td class="tr_botborder" style="vertical-align:middle;" width="20%" align="center"><div align="center"><a href="detail.php?item_id=<?= $bestsellers_fetch['item_id']; ?>" class="bestsellerstxt"><img src="thumbnail/<?= $bestsellers_fetch['picture1']; ?>" alt="" width="79" height="70" border="0" /></a></div></td>
            <td class="tr_botborder" style="vertical-align:middle;" width="30%" align="center"><div align="center"><span class="bestsellerstxt"><a href="detail.php?item_id=<?= $bestsellers_fetch['item_id']; ?>" class="bestsellerstxt"><?= $item_subtitle1; ?> <?= $item_title1; ?></a><br/><?php if ($response[0] != '') { ?><a style="text-decoration:none;color:#336666;" href="detail.php?item_id=<?= $bestsellers_fetch['item_id']; ?>"> <?php echo $response[0] . '&nbsp;responses'; ?></a> <?php } else { ?><span style="color:#666666;"><?php
            echo '0&nbsp;responses';
        }
        ?></span></span></td>
            <td class="tr_botborder" style="vertical-align:middle;" width="50%" align="center"><div align="center"><span class="bestsellerstxt"><a href="#" class="bestsellerstxt"><?= html_entity_decode($bestsellers_fetch['detailed_descrip']); ?></a></span></td>
        </tr>

        <?
        if ($counttop != 2) {

        }
    }
} else {
    ?>
    <tr><td height="148" align="center" class="featxt">No Items Available</td></tr>
    <?
}
?>
</table>
<div style="text-align: right;"><?php echo $nav_links; ?></div>

此代码在除 IE 之外的所有浏览器中都能正常工作。 当我在我的 ie9 上打开页面并且在几 (5-8) 分钟后没有执行任何操作时,页面就会变成空白。

【问题讨论】:

标签: php javascript jquery internet-explorer-9


【解决方案1】:

我不确定 IE9,但我在旧版本的 IE 中遇到过此类问题。该浏览器有打开与服务器的持久连接的坏习惯,并且大多数服务器(如果不是全部)对每个用户的打开连接数量都有限制。 知道您有 1 分钟的间隔,并且持久连接在 5 分钟后超时,只需数一下,您就会明白为什么...

【讨论】:

    【解决方案2】:

    我经历过这个...实际上加载失败是因为 IE 严格验证返回的 HTML。所以请确保 Recent_updates.php 返回有效的 html

    【讨论】:

    • Yaa..Recent_updates.php 返回有效的 html。我在问题中添加了该页面的内容
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-10
    • 2012-02-19
    • 2018-06-21
    • 1970-01-01
    • 1970-01-01
    • 2013-12-02
    • 2014-02-15
    相关资源
    最近更新 更多