Boths ways would work. Serethos' would be a bit slow and KONI's would eat some ram
I would use polys as Serethos suggested, but I would use a two tiered check. First determine which bounding rects you hit then check those polys and as soon as you got a positive hit for the contains method stop checking.
The benefit of that method is that it's easy to do and it's also pretty fast because you can exclude the vast majority of the polys for the indepth check.
So basically... create an array with all Polys and create an array with bounding rectangles (same size/same order - just use getBounds()). If a click occours, step through the rectangle array and do the contains check... if positive do the same with the poly (same index)... if positive return the current index and if nothing was hit return -1.