我不确定是否有人注意到 Facebook 可以在达到某个级别时检测用户的放大级别,它会动态地将 .hidden_elem 类名添加到 .fbChatSidebar 到把它藏起来。 (检查下面的附件)
我搜索了很多有关此功能的信息,并在 github 中找到了名为 detect-zoom 的 repo。 , 但似乎仍然存在一些问题,尤其是在最新版本的 FF 和 Chrome 中。
所以我真的很好奇 Facebook 如何使用 JavaScript 检测到这一点,我已经在最新的 FF 和 Chrome 中进行了尝试,似乎 Facebook 可以正确检测到它并在正确的放大级别 Conceal 侧边栏。
有人知道他们是如何实现这个功能的吗?欢迎甚至可能的解决方案。
谢谢。
最佳答案
我不确定 Facebook 使用的确切解决方案,但我发现他们在调整窗口大小和缩放时 Conceal 了边栏。
我的研究表明,所有浏览器(包括 IE8 及更高版本)在缩放时也会触发 window.resize 事件。因此,通过在您希望 Conceal 某些内容时设置一些断点,您应该能够实现一些类似的功能。
快速而肮脏的例子:http://jsbin.com/ofufer/1/
关于javascript - Facebook "zoom in"时,聊天侧边栏被 Conceal ,但如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18268163/