Jem,
Why didn't Jesus give an explanation to the people who left in disgust?
If you read the verses in context, you will appreciate the setting in which he said those "shocking" things. (Read John 6)
They took what he said at face value because they were already murmuring among themselves. If Jesus was their Messiah, sent to them by the Father, then they should have had the same attitude that his apostles displayed and realized that his words, even though they sounded equally shocking to them, were not intended to be taken literally. He spoke to them in illustrations all the time, so if they were so easily stumbled by his words, they were not exercising faith in him to begin with.
Sometimes God allows tests of faith to see what is really in our hearts. Some among the ones who left on that occasion may have thought more about it and come back for an explanation, or they may have used it as an excuse not to accept him as Messiah at all. Either way, Jesus never ran after anyone. The genuine ones would always come back because their hearts would impel them to. As Jesus said in John 6:44, the Father "draws" people to his son. That being the case, nothing will impede the actions of God's spirit...not slander, not ridicule, not even outright persecution will stop God's spirit from leading a person onto the road to everlasting life...which is "cramped an narrow" for a reason. It isn't God who makes the way tough, it is his adversary trying to appeal to self interest that makes a person want to stay on the easy road to death. (Matt 7:13, 14)
If people want excuses to stay on the wrong road, they will find them.....and God will not prevent it. He will grant them the desires of their own heart. (2 Thess 2:11, 12)