1). Disable all plugins and themes (just use a default WordPress theme like twentythirteen).
2) Test to see if the editor works correctly. If so great, move on to step 3. If not, report back here with what kind of server/hosting setup you're using.
3) If a the default WordPress setup works, move on to enabling your custom theme. Now test your site to see if the visual editor works. If yes, great, move on to step 4. If not, contact the theme developer for support.
4) Now start enabling plugins one by one. Test after enabling each one to confirm everything works. If things aren't working, note which plugin you last enabled and contact the plugin developer for support.
By the end of these 4 steps, you should be able to identify the root cause of what's causing the issue (or have a good idea where the issue might is coming from).