如何在代码更改时重新加载html页面

时间:2009-12-21 12:39:04

标签: javascript jquery html

我记得看过John Resig的jquery演示。他有一个浏览器应用程序在编码时重新加载。我认为他甚至不需要保存他的代码更改就可以实现(见视频中的3:40)。

这是视频:http://vimeo.com/116991

我觉得这很酷,并认为在编码时这非常有用和有趣。

你知道他正在使用什么应用程序吗? 你知道这是怎么做的或者可以做到的吗?

更新 这是Januz建议的:

  

您可以使用XRefresh。每次在项目文件夹中保存文件时都会重新加载。

似乎工作正常。

8 个答案:

答案 0 :(得分:4)

您可以使用XRefresh。每次在项目文件夹中保存文件时都会重新加载。

答案 1 :(得分:3)

Skúli - 我没有时间观看整个视频,但我想我知道你在追求什么:能够自动刷新网页。这可以由于多种原因而完成。您可能希望实现监视器,保存内容,避免超时等。

虽然JQuery很有用,但使用Ajax可以实现整体效果。在ASP.NET中,只需在页面上放置一个计时器和一个匹配的Ajax更新面板:

<asp:Timer ID="Timer1" runat="server" Interval="60000" ontick="Timer1_Tick" ></asp:Timer>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <ContentTemplate>
    </ContentTemplate>
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="Timer1" EventName="Tick"/>
    </Triggers>
</asp:UpdatePanel>

在回调中,您可以保存页面状态(例如用户正在处理的文档)或刷新更新面板中的内容(此处面板中没有显示任何内容,但我认为您将获得主意)。

答案 2 :(得分:1)

您还可以使用meta refresh自动重新加载页面:

<meta http-equiv="refresh" content="3" />

答案 3 :(得分:1)

IE有一个自动刷新更改工具。它被称为ReloadIt,可在http://reloadit.codeplex.com获得。自由。

不是IE的附加组件,而是更多的“附件”。它不会改变IE安装,也不会安装BHO或类似的东西。所以安装效果非常低。

您选择要自动重新加载的URL,并指定一个或多个目录或文件路径以监视更改。按F12开始监控。

enter image description here

设置后,将其最小化。然后编辑您的内容文件。保存时,页面会重新加载。像这样:

enter image description here

您无需添加任何代码即可添加到解决方案中。它适用于jQuery,或mooTools,或其他任何东西。它适用于PHP或ASPNET或python。它适用于IIS或Apache或任何服务器技术。唯一的要求是在IE中查看页面。

答案 4 :(得分:1)

按照本自述文件中的说明操作,它将为您提供所需的功能:

如果您使用emacs作为文本编辑器(例如,命令emacs在没有错误的情况下保存文件),实际上如果没有错误,您可以完全刷新页面。

这可能有用:https://emacs.stackexchange.com/questions/12459/save-buffer-at-each-modification

您也可以查看此脚本:

Refresh-Develop

它适用于Firefox,因此您可以添加远程控制插件。

然后,当Web目录更改时,使用bash脚本向浏览器运行命令。

因此,除了这个插件外,您还需要inotify-tools来查看目录,并在目录更改时netcat与浏览器通信。

然后,你可以申请任何其他代码(也许你使用.c文件,你想在保存它时立即测试它,你只需要inotify并修改代码来自自述文件)

答案 5 :(得分:0)

我试过这个javascript代码:

window.setInterval("if(document.hasFocus()===false)location.reload(true);",3000);

它适用于firefox,我在IE中收到警告,但它在chrome中不起作用(document.hasFocus()总是如此)

不是一个完美的解决方案,但它有效,但并不优雅。缺点是这个代码在解决方案本身。使用可修复的ajax。

答案 6 :(得分:0)

我不知道他使用了什么,但我使用ReloadEvery

答案 7 :(得分:0)

他正在使用带有预览窗口的代码编辑器,该窗口会自动刷新代码窗口的更改。没有Ajax魔法!

不确定他正在使用哪个编辑器,但我知道CSSEdit可以做到这一点,那里可能有各种其他编辑器的插件。