代码之家  ›  专栏  ›  技术社区  ›  lprsd

Web开发期间自动刷新浏览器

  •  1
  • lprsd  · 技术社区  · 15 年前

    对于代码中的每个更改,服务器都会自动重新启动,这是非常好的。您将如何让浏览器根据配置自动刷新(至少打开和关闭)。

    如何在Windows和Linux上为所有不同的开发框架实现这一点。

    现有的软件包允许您这样做,如果您只需要在每个运行服务器上添加一个browser.refresh,您会怎么做呢?

    7 回复  |  直到 12 年前
        1
  •  5
  •   Edu Felipe    15 年前

    在Mac OS X上,您可以使用AppleScript来实现这一点。我以前就这么做过,从那以后就一直在使用它。

    # Check if Firefox is running, if so refresh
    ps -xc|grep -sqi firefox && osascript <<'APPLESCRIPT'
    tell app "Firefox" to activate
    tell app "System Events"
       keystroke "r" using {command down}
    end tell
    APPLESCRIPT
    
    # Check if Safari is running, if so refresh
    ps -xc|grep -sq Safari && osascript -e 'tell app "Safari"' -e 'activate' \
    -e 'do JavaScript    "window.location.reload();" in first document' -e 'end tell'
    

    它刷新了Safari和Firefox,但正如我所说,它只在Mac上工作。我一直在textmate上使用它,这样每次保存django文件时,我也会刷新浏览器。很方便,但在网上阅读文档和编写代码时也有点烦人,呵呵。

        2
  •  1
  •   Dave W. Smith    15 年前

    有几种方法可以让浏览器自动刷新。最简单的方法是有条件地生成元标记

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

    使浏览器在15秒后刷新。

    在Web开发过程中自动刷新的问题是,正如您注意到您的页面有点奇怪,并且正在仔细查看…啊!住手!!!!如果你幸运的话,你会得到同样的问题页面。

        3
  •  1
  •   Lorenz    15 年前

    对于火狐来说 ReloadEvery 附加组件,让您指定重新加载页面的间隔。

        4
  •  1
  •   iloveitaly    14 年前

    在OS X上,可以使用以下AppleScript刷新Chrome中最前面的可见选项卡:

    osascript <<'APPLESCRIPT'
      tell window 1 of application "Google Chrome"
        tell tab 1
          execute javascript "window.location.reload()"
        end tell
      end tell
    APPLESCRIPT
    
        5
  •  0
  •   Yada    14 年前

    Google Chrome浏览器中的自动刷新扩展:

    ChromeReload

        6
  •  0
  •   numan salati    13 年前

    LiveReload: http://livereload.com/

    对Safari、Chrome和Firefox来说,它就像是一个魔咒。

        7
  •  -1
  •   inerte    15 年前

    Opera浏览器有一个内置选项来自动刷新页面。

    无论如何,您需要告诉客户机什么时候可以刷新(客户机可以忽略)。你可以用两种方式来分辨:

    • 元标记刷新
    • javascript.location和settimeout

    现在,更具体地说,HTTP是一种无状态协议。服务器发送完数据后,就结束了。服务器不能说“嘿,这里有更多的数据,浏览器!”因此,当浏览器重新启动时不会通知浏览器。

    能够 实现一个Ajax/Coment调用(以获取更多数据),但这就像作弊,因为您将向客户机发出更多请求,因此这不是一个单独的服务器工作。