Reasons to give locally:
Descriptively, people give to local charities because they are most aware of local needs, they forget about people in far-away places, they think people in far-away places are inferior and deserve to starve to death, giving locally allows people to better see the results of their actions so the donors can feel good about themselves, giving locally can help a rich person to gain status among others in high society, local charities might be deemed worthy because they have helped friends or relatives or might help them in the future, some foreign operations are thought to misdirect resource through corruption, and probably many other "reasons" that have varying degrees of validity.
Prescriptively, there might be a basis for giving locally while letting people in far-away lands starve to death because supporting some types of charity might help to maintain the social systems that allow your luxurious life to continue. In other words, without a system of local charity, there might be class wars or other such things that lead to bad conditions locally. If taken to the extreme, denying local charities could quickly result in some local people experiencing the same extreme threats that people in far-away lands face. There is also the possible perception that helping people in far-away lands is counterproductive if that help does nothing more than allow the current population to expand so that an even larger number of people will face even greater suffering due to the inability to sustain that population.
There is also a question about what is "local"--is it my town, or anybody in the U.S., where I live. There are people in the U.S. that live in areas where there is little help from people in their immediate area, so I give them priority. An example would be Indian reservations in South Dakota. I am familiar with this organization:
http://www.changingwinds.org/Their web site is not fancy, and other things are imperfect, but I know specifically what they do and how it helps, so I support them. I also support organizations that operate in developing countries.
I don't think there are any simple solutions to giving locally versus in developing countries. As for giving to animal causes, some of the same conditions apply, but the main basis for choosing animal rights or environmental rights organizations stems from a person's belief in the intrinsic value of animals, nature, and the like. It might be interesting to ask yourself about the degree to which you (or humans in general) discount the value of non-human life forms. Long ago, I had not asked myself this until I encountered somebody who dedicated his life to shrimp (and their habitat in mangrove forests: coastal areas usually in mixed salt and fresh water where many aquatic life forms begin life):
http://www.mangroveactionproject.orgp.s.: The 95% confidence in living another month versus the increasing value of wine seems like a useful approach