James Foster struck his first century of the season to put Essex in control on a rain-affected third day of their LV= County Championship Division Two clash with Leicestershire at Grace Road.
The Essex captain and wicketkeeper hit a masterful 143 to lead his side to a total of 356, despite Matthew Hoggard completing a six-wicket haul, for a first-innings lead of 54.
Although 35 overs were lost in the day, Essex were looking in an even better position at the close with Leicestershire 91 for four - leading by only 37 runs.
Niall O'Brien was the first to go, edging to Foster as he fenced at a delivery from David Masters. In the next over, Reece Topley had Greg Smith lbw to leave Leicestershire 27 for two.
Joe Burns and Ned Eckersley staged a brief recovery when putting on 46 until Ryan ten Doeschate turned the tables again by dismissing both in the space of six overs.
He trapped Eckersley lbw on the pull and bowled Burns when the Australian, trying to cut, chopped the ball back on to his stumps.
Shiv Thakor and Matthew Boyce added five more runs before bad light brought an end to play with eight overs still to go.
Earlier, Foster had hit a fourth century in five years against Leicestershire; his chanceless innings contained 21 fours, a six and came off 190 balls.
In the end, he became Hoggard's sixth victim when skying a catch to mid-on after taking Essex past the 350-mark to earn a fourth batting bonus point.
Foster set the tone in the first over of the day when he took 12 runs off Ollie Freckingham to race from his overnight 45 to 57, and continued in the same fashion.
He posted his century with a neat late cut to third man off Jigar Naik, with Graham Napier backing that effort up by hitting a powerful 52 before falling lbw to Freckingham, ending a stand of 114.
But Foster skilfully marshalled the tail through another 11 overs until he was ninth man out at 355; Hoggard, in his first game since April, finished with impressive figures of 6-66 in 29 overs and Alex Wyatt took 3-80.