我正在使用AngularJS创建一个简单的指令,为任何链接添加平滑的滚动效果。
我在这里发表了我的作品:https://github.com/arnaudbreton/angular-smoothscroll
一切都在真实的环境中工作,但我无法弄清楚如何正确地进行单元测试。
我wrote a test无法通过,因为$window.pageYOffset
未按预期递增。
感谢您的帮助!
答案 0 :(得分:1)
我做了一个拉动请求,让你的测试运行。 https://github.com/bennyjo/angular-smoothscroll/commit/e660a8e1a4497907a9c74d9e359f2bbfa0b8326c
基本上问题是窗口没有可以滚动的空间。因此,无法滚动,测试失败。我在body元素上添加了一些高度,使窗口可以滚动。
$('body').height(window.innerHeight*2).append @target
我也在每次测试前重置了滚动位置。如果我们不这样做,第二次测试就会失败。
window.scrollTo(0, 0);