It'll either learn it by leveling up or if it's already high-leveled, go to the Move Tutor in Blackthorn and you should be able to learn it for a Heart-Scale.
Haunter is a ghost type of Pokémon. The last move that it learns in Pokémon LeafGreen version is Mean Look.
Goldbat at lv30'ish And Haunter I recommend Goldbat since it's FAST when a Crobat (lv35). Though Ghastly/Haunter is good as well.
Mean Look cannot be found as a TM in Pokémon SoulSilver. Pokémon can only know Mean Look as a level-up move or as an Egg Move. Pokémon such as Zubat, Golbat, Crobat, Gastly, Haunter, Gengar, Smoochum, Jynx, Umbreon, Murkrow, Duskull, Dusclops, Dusknoir and Sableye can learn Mean Look via level-up however Grimer, Ralts and Absol can learn Mean Look via breeding as an Egg Move.
zubat and its evolutions learn mean look at level 29-33
Mean Look is a move that disallows the opponent from switching Pokemon. Some Pokemon that can learn mean look are zubat, golbat, gastly, haunter, gengar, jynx. Also Crobat, Umbreon, Murkrow, Misdreavus, Smoochum, Sableye, duskull, Dusclops, and Dusknoir.
The move Mean Look will stop a Pokemon from running from battle. (It's not a TM, but Spider Web works identically. In Generation IV, some Pokemon also learn Block, another Mean Look Clone.)
haunter's best move depends on the Pokemon and skill level but if you really want the answer that is technically right i would say the most powerful and effective one.
It can but you need a move tutor to do that.
by leveling up: zubat, golbat, crobat, gastly, haunter, gengar, smoochum , jynx, misdreavus, umbreon, mukrow, sableye, duskull, dusclops, dusknoir. By breed: grimer, muk, absol, ralts, kirlia, gardevoir, gallade. Hope this helps.
there is no move you need to get a zubat,gastly or evenn maybe a wobbefett
Eventually if you level up your Pokemon then it will learn the move mean look. For example watchog will learn mean look
Mean look is normal type