Ajinkya Rahane and Virat Kohli remained unbeaten at the end of Day 3 to put India in a commanding position.
Earlier, Jason Holder's cameo helped West Indies cross the 200-run mark. Windies finished on 222.
Mohammed Shami removed Holder. Ishant Sharma was the highest wicket-taker in the innings (5), followed by Shami and Ravindra Jadeja (2), and Jasprit Bumrah (1).
India went off to a shaky start, as Roston Chase removed both the openers, Mayank Agarwal and KL Rahul.
Cheteshwar Pujara, who looked composed in the second innings, was dismissed by Kemar Roach on 25 to put India in trouble.
However, Virat Kohli (51*) and Ajinkya Rahane (53*) steered India to a 260-run lead at the end of day's play.