HTML应用程序检查更新

时间:2009-09-15 02:48:39

标签: html iframe

我创建了一个HTML应用程序,我想让它查看它是否是最新版本,如果不是,则显示链接。

我是javaScript的初学者,所以如果你能告诉我如何解决这个很好的代码。

<script type="text/javascript">
var thisVersion = 1.5

function checkForUpdate() {
    document.getElementById("version").value;
    if (value == > "thisVersion")
        updateMessage.style.display = 'block'
    else
        updateMessage.style.display = 'none'
}
</script>

<iframe src="my page where i say the latest version" scrolling="no" width="0" height="0" style="display:none"></iframe>

<table id="updateMessage" style="display:none">
There is a new version avalabal please download the new verion
<input type="button" value="here" src="update page">
</table>

由于

2 个答案:

答案 0 :(得分:0)

用户硬盘上的HTML页面无法使用Javascript自动检查和/或下载新版本。出于安全原因,Javascript无法访问来自不同域的iframe,并且AJAX因同样的原因无法工作。 Internet Explorer也会始终显示有关Javascript的警告,这对用户来说很烦人。

一个解决方案就是让网页保持在线托管,因为无论如何你都要在网上查看。

另一种方法是下载的HTML页面显示托管脚本,并在URL中传递其当前版本。因此,如果用户下载的文件是版本2,则iframe将如下所示:

<iframe src="http://yoursite.com/checkupdate.php?current=2"></iframe>

然后iframe中的checkupdates.php脚本会检查传入其中的'current'的值。如果您当前的版本是2,则可以输出“您正在使用的是最新版本”。但如果您当前的版本是3,它可能会显示“此文件的更新版本 - 点击此处下载”。

然后页面的版本3会改为使用这个iframe:

<iframe src="http://yoursite.com/checkupdate.php?current=3"></iframe>

注意:如果您希望iframe看起来更“内联”,可以设置iframe样式以删除边框/滚动条。

答案 1 :(得分:0)

您可以使用脚本标记指向Web服务器上具有最新版本设置的变量:

,而不是使用包含带有“最新版本”信息的网页的iframe。

您的网络服务器上的version.js内容:

var latestVersion = 1.5;

下载页面中的html:

<script type="text/javascript" src="http://yoursite.com/version.js"></script>
<script type="text/javascript">
var thisVersion = 1.4;
function checkForUpdate() {

    if (thisVersion < latestVersion )
        updateMessage.style.display = 'block';
    else
        updateMessage.style.display = 'none';
}
</script>