Not really, no. The problems come in when dealing with the user typing, or pasting an existing URL, because whenever the user edits the value, that changes the position of the insertion bar, and such issues don't tend have cross-browser friendly solutions.
Validation of user input is a much easier and more effective solution.
If you want to reinforce to the user what you want the field to start, you can set the default value of the field to http:// to help clue them in to your wishes.
If after entering their value it doesn't meet up with your requirements, that is where standard validation occurs to resolve such issues.