我遇到过这种情况,设备使用 PHP 访问简单的 MySQL 数据库。 当我进行搜索时,结果会写入 HTML 文件中。
我有第二台设备(非常基本的安卓平板电脑)打开了这个 HTML 文件。使用 live.js 它会在内容更改时刷新。我需要的是:一条静态消息,类似于“等待搜索结果”,并且仅当页面内容更改时才显示结果...
是这样的:在平板电脑上加载 1.html(等待搜索结果)。当页面 2.html 的内容发生变化时(有一个搜索查询),显示它 (2.html)。按下按钮(用户输入)后,让我们回到 1.html 并等待页面 2.html 的内容再次发生变化。
单独使用 live.js 我只能观察当前打开的文件...
关于如何实现此目标的任何想法? 非常感谢。
[编辑 - 已解决] 我让它像这样工作: 当平板电脑的用户按下按钮时,它会运行一个 PHP 脚本,用“等待结果”文本替换文件的内容(先前的搜索结果)。当然,它的头部有 live.js,当出现新的搜索时,页面会重新加载新的搜索结果。
这比我想的要容易得多。
PHP 脚本:
<?php
ob_start();
$myFile = 'ana.html';
unlink($myFile);
$fh = fopen($myFile, 'w') or die ("can't open file");
$stringData =
'<html>
<head>
<title>Rezultatele cautarii</title>
<link rel="stylesheet" href="style.css">
<script src="live.js"></script>
</head>
<body>
<h1 class="button">Asteptam cererea</h1>
</body>
</html>';
fwrite($fh, $stringData);
fclose($fh);
header('Location: '.$myFile);
die();
?>
最佳答案
你的意思是这样的吗?
document.write('<div id="loading"><br><br>Please wait...</div>');
function addLoadEvent(func) {
var oldonload = window.onload;
if (typeof window.onload != 'function') {
window.onload = func;
} else {
window.onload = function() {
if (oldonload) {
oldonload();
}
func();
}
}
}
addLoadEvent(function() {
document.getElementById("loading").style.display="none";
});
关于php - 当不同文件的内容发生变化时,如何刷新 HTML 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16664561/