You can use jQuery .fadeOut to fade an element out, however this would only work in a single page instance. In other words, it would start over each time someone refreshed the page. Is this what you want?
If you want it to face the same for anyone who visits the site at a given time, then you can create a date element in javascript and calculate based on that. It'll take a little work but it should be possible.
Create a new date object on load of the page using
var currDate = new Date();
then calculate how long until the end "reveal" time and take that as a percent of the total time from start (when this fading "started") and assign that as the current opacity.
Next look at how much time is left and start a new jquery .fadeOut animation with that amount as the duration.
You'll want to place the "hider" over the top of what ever is being revealed using position:absolute.
This is a pretty high level description of one possible solution.