For example if you specify a salary you end up anchoring the negotiations, if a candidate is not quite up to the level you're looking for but you want to hire them anyway, the candidate is much less likely to accept a job offer where you offer a salary below what you stated in the ads, even if they would have accepted it otherwise.
Furthermore you need to consider the impact disclosing salary levels has on current employees, if the market is tough you may have to offer a salary above what current employees are earning, which can be very damaging to morale and can make your staff feel hostile towards the new hire from the start.