This is a calendar component that supports both horizontal and vertical 2-way scroll actions. You can scroll the date panel horizontally to see events in different dates; you can scroll the hours panel vertically to see events in different time slots within a day. When scrolling the panels, the events panel will be scrolled accordingly.
On the other hand, you can also scroll the events panel in both directions and the date panel/ hours panel will scroll accordingly as well.
Implemented the calendar with pure html/css so it can be applied to both web page and mobile web view directly.
Used javascript debounce and throttle to reduce performance decrease caused by frequent scroll event.
http://thunderdust.github.io/front-end-creations/2-way-scrollable-calendar
Weiran Liu