Forum Moderators: Robert Charlton & goodroi
I strongly favour javascript/ajax implementations for such things, rather than readable hyperlinks that imply new content. The canonical attribute is the poor second solution to this problem, which will work some of the time. Parameter handling is hit and miss and is not a real solution.
there's no "penalty" for duplicating content. You're just serving unnecessary content to Google that leaves it to sort through and make decisions - essentially, handing over control of how your site is crawled and indexed for a third party to decide, based on their particular criteria of the time. Fixing such problems has nothing to do with penalties, and everything to do with controlling your site's destiny. It's old school tech SEO.