javascript - 实现弹出书效果的算法是什么

标签 javascript

以下是效果示例:

http://2012.beercamp.com/

我查看了源代码,显然有一些计算旋转的算法。是否有任何资源可以实现这种效果,或者有人可以用外行术语分解并解释该算法吗?

我尝试在 jsfiddle.net 上玩 jsfiddle但还没有接近它。

最佳答案

Smashing Magazine 做了 complete breakdown在那个确切的网站上。

编辑,回复评论:adj不是“边”,而是“长度”。为了让立体书能够自行折叠而不是乱七八糟地皱起来,内容的背景必须与它们所在的页面成一定的 Angular 。完全水平,书就不起作用,完全垂直,从书的正面看不到任何东西。我们的作者选择了与水平方向成 15°,但这个选择是任意的。

一旦他选择了 15°,他就需要知道书的宽度。这就是他所说的adj。它是使用固定的“场景宽度”和任意 Angular 创建的书的尺寸。他使用毕西哥拉斯定理来得到它(因为数学不是他的强项),但如果你愿意,你可以用以下内容替换该行:

var adj = POPUP_WIDTH * Math.cos(degToRad(15));

关于javascript - 实现弹出书效果的算法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10265634/

相关文章:

Javascript 历史记录 返回清除表单

javascript - 我怎么把范围弄错了?无法从 jQuery 访问此函数 ".on"

javascript - react-fullpage - 避免渲染中的 setState 无限循环

javascript - CSS/JS 没有在 IOS 上加载,似乎没有原因,无法复制问题

javascript - 通过在 Firefox 中单击后退按钮访问时重新加载页面

javascript - 如何有条件地更新对象的属性?

java - Spring MVC POST 不支持的媒体类型

javascript - 对 RANGE 类型的 INPUT 进行动画处理

javascript - D3 在屏幕上适配节点

javascript - 为图像模式选择多个元素