sky*_*ail 5 jquery bookmarklet
jQuerify是一个小书签,用于为当前显示的网页添加jquery支持.看看这个页面:http://www.learningjquery.com/2009/04/better-stronger-safer-jquerify-bookmarklet/
这个演示让我知道是否已经下载了jquery,如果没有,则加载它,然后显示活动版本.我的问题是:在使用谷歌浏览器浏览时,某些页面上没有显示任何内容,例如facebook,google(不是缓存页面,而是页面结果)使用IE时,它正在使用这些页面.
我试图在Chrome上断开用户谷歌会话,但我仍然有问题.我以为它是由https网址引起的.但是在确认"显示所有内容"之后,它在IE中显示正常.
可能是Chrome中的配置错误?有没有针对jQuerify的修复,还是应该放弃并找到另一个加载jquery和远程脚本的解决方案?
谢谢你的建议.
在Google Chrome中,您可以在浏览器控制台中看到错误消息.
它说:拒绝加载脚本'http://code.jquery.com/jquery.min.js',因为它违反了以下内容安全策略指令:"script-src https:// .facebook.com http:/ / .facebook.com https:// .fbcdn.net http:// .fbcdn.net*.facebook.net*.google-analytics.com*.virtualearth.net .google.com 127.0.0.1:* .spotilocal. com:*chrome-extension:// lifbcibllhkdhoafpjfnlhfpfgnpldfl'unsafe-inline''unsafe- eval'https:// .akamaihd.net http:// .akamaihd.net".
这是因为Facebook实施了一个安全功能,该功能是使用HTTP标头"X-WebKit-CSP"实现的.
这就是为什么Facebook上的当前实现会影响在基于webkit的浏览器(Chrome和Safari)中加载外部脚本的 原因jQuerify bookmarklet在Firefox和IE上运行良好.
Chrome的解决方案,您可以使用以下方法执行此操作:
http://127.0.0.1/jquery.js(注意:请勿http://localhost/在此处使用).在jQuerify bookmarklet中,将jQuery文件的路径更改http://code.jquery.com/jquery.min.js为http://localhost/jquery.js.现在bookmarklet工作正常.要么
| 归档时间: |
|
| 查看次数: |
1025 次 |
| 最近记录: |