I use of of these Aimon XB Wireless controllers on the Xbox 360.
Be warned: You do need an Xbox 360 "wired" controller to make this work, and apparently it works on PC too. I'm going to be trying this on my iMac when I get it and try using it on a bootcamp version of Battlefield 3.
Are you looking to use the controller in Windows or Mac OS X?
AFAIK, XBox 360 controllers only work in Windows.
I know the official Microsoft ones will work, I heard aftermarket controllers may have issues.
You'd probably be better off getting a decent mouse. The Apple mouse isn't good for gaming because it won't register two button clicks together - for example, you can't zoom in with the left mouse button and shoot with the right. A bigger gaming mouse is more comfortable too.
I've got an Xbox controller for Steam but I haven't used it all that much. Some Windows games like Batman and Hotline Miami are better with the controller but I find most things are easier with the mouse.
Also - Battlefield 3, you won't have much fun using a controller versus mouse / keyboard players, they'll tag you before you can even turn to look at them.
I don't know why you specifically asked about using an xbox controller, but I just started playing Castle Crashers, which is tough with the keyboard controls. However, getting a PS3 controller wirelessly working with my Mac (OS 10.8) was not a big deal, and it's working flawlessly with CC.
As has been mentioned, the magic mouse is not a great gaming mouse and many don't use it. I do, however, and it suits my KB/M gaming needs. I rarely play FPS.
I've got a Logitech G500 mouse, which works pretty well on Mac via a third-party driver called Steermouse. It's so much more comfortable than the Apple mouse, it's almost like a different type of device.
The Apple keyboard is fine for games, I actually like it a lot.
You can use a wired Xbox controller on Mac, there are a couple of drivers that will work with it. USB Overdrive might even handle a gaming mouse at the same time.
If you've got the option, though, get a copy of Windows and run your Steam games through that. I installed Left 4 Dead 2 on my Mac and found it to be a bit glitchy. Installed Windows (not fun at all) and it runs much faster, it has more graphical options, the mouse is more responsive... I don't install games at all on the Mac side any more.