The USS Reuben James was a Destroyer protecting a convoy when it was hit and sunk by a torpedo from a German U-Boat. This was on Oct 31, 1941. Most of the people on board were killed.
A Wikipedia article on the US Neutrality Acts also says:
After repeated attacks by German submarines on U.S. ships, Roosevelt announced on September 11, 1941, that he had ordered the U.S. Navy to attack German and Italian war vessels in the "waters which we deem necessary for our defense".
Though it has no citation for that, it makes it sound like Germany had been attacking US shipping for at least a month.
And I guess I'll just explicitly make the obvious comparison to WW1 and the Lusitania. Germany sank the Lusitania in 1915. It was a British ship, but over 100 Americans died in that attack, so American joined WW1 albeit two years later.
In the Rueben James case, it was an American ship and over 100 died according to Larrabee (Commander in Chief: Franklin Delano Roosevelt, His Lieutenants, and Their War, Simon and Schuster, 1988; Google books). So why didn't America join the war after it sank?