对Chrome进行的一些半即时更新现在会在断点处暂停时在我的网页上放置一个叠加层.我特意试图在此时查看我的页面标记的状态,并且叠加层正好隐藏了我想要看到的内容!
有没有办法关闭这个标记?
或者有没有办法将Chrome恢复为没有此功能的版本?
debugging user-interface google-chrome google-chrome-devtools
我试图依靠浏览器缓存来保存jQuery中从AJAX调用返回的JSON数据.
正常的浏览器活动始终依赖于浏览器缓存.示例:页面重新加载时不会重新获取jpg和gif图像.
但是当我尝试使用jQuery getJSON ajax调用时,我似乎无法避免从服务器获取数据.
我返回的标题看起来像这样(用firebug确认):
Transfer-Encoding: chunked
Date: Wed, 05 Aug 2009 02:55:39 GMT
Content-Type: text/plain; charset=ISO-8859-1
Expires: Wed, 05 Aug 2009 03:55:39 GMT
Cache-Control: max-age=3600
Run Code Online (Sandbox Code Playgroud)
然而,立即刷新页面会导致相同的请求命中服务器.
我已经看过几篇关于避免缓存行为的帖子,这不是我需要的.我已经看过几篇关于利用缓存的帖子,但那些似乎都依赖于在DOM中保存数据.我想要的东西就像缓存图像在页面重新加载时一样.
浏览器是否只是从它自己的缓存中获取它?
--x - x - x - x UPDATE --x - x - x--
令我失望的是,几位受人尊敬的人都认为这不仅是可能的.有些人甚至争辩说它不应该(这仍然令我感到困惑).
Stubburn故障,我尝试了以下几点:
我在要缓存的所有传出页面上设置了Etag标头(我选择一些选择URL参数来表示我正在请求的数据,并将其用于Etag值)
在下一个请求开始时,我只是检查请求中是否有'If-None-Match'标头.如果是这样,那么浏览器不会像我想要的那样缓存请求,所以我发送了304 Not Modified响应.
测试显示Firefox不会缓存我的请求(但我仍然可以避免'获取我的cgi的昂贵数据'部分),而IE6实际上会缓存它(甚至不会尝试从服务器取回).
这不是一个很好的答案,但它现在对我
有用(那些图形数据的完整页面刷新现在不会那么慢或昂贵).
(什么?我正在运行IE6!天啊!哦,看起来像一只松鼠!)
我在chrome和firefox中使用jQuery和flot.当我处理我的代码时,我发现执行在诸如访问不存在的哈希结构之类的愚蠢内容上无声地失败.
感觉jQuery中有一些try {} catch {}逻辑让我看不到任何错误.
关于如何解决这个问题的任何指针,如果没有毯子hack-n-slash来隔离一个简单的bug在哪里?
jshint并没有太大的帮助.
- 编辑 -
更多调试显示趋势.
我基本上是在找到拼写错误(未定义的变量)并在对象属性存在之前提前获取它们.使用.hasOwnProperty()有所帮助,但很麻烦.我想我在某个地方看到了一个方便的实用程序来帮助简洁地测试深层结构.