A Canadian nurse attacked by a shark in Cancun, Mexico, Monday morning has serious injuries to her left arm and leg but is recovering well in hospital.

Nicole Ross, 38, from Orangeville, Ont., was swimming just off the beach at Caribe Park Royal Grand Resort at 11:30 a.m. when she was attacked, suffering severed muscles, tendons and nerves in her lower left leg, left forearm and hand. The mother of two also "lost a lot of blood," said Dr. Italo Sampablo, the medical director from Hospiten Cancun, where the woman underwent surgery.

Friends said Ross is awake, breathing without a ventilator and talking with them.

The shark had tried to attack another tourist before aiming for Ross, said Kelly Rowat, 44, of Moncton, N.B., who witnessed the attack.

"Everybody turned around, people were pointing, and just where we were standing — about waist deep — you could just see the shadow of the shark coming," said Rowat. "It was probably six feet long, three feet wide. I certainly didn't expect to see a shark."

Rowat said she heard Ross scream and then saw the blood in the shallow water.

"There was so much blood in the water. There was no way that I could look any further than that," she said.

Rowat's 15-year-old daughter Brooklyn said she saw two bites on the victim.

"So when they were pulling her to shore, I was standing right there. It was the top of her left side that got bit and her left arm."

Shark escaped

There are reports the shark had come in to shore to give birth and Ross, who had slipped into the water to cool off after a beach volleyball game, got too close.

"I was in the pool and suddenly I heard a scream," said Mara Busuttil, 48, of Asheville, N.C.

A lifeguard on a personal watercraft pulled Ross from the water and took her to shore.

Friends travelling with Ross said the nurse gave instructions on how to dress her wounds before she was taken to hospital.

Lifeguards tried to corner the shark, a witness said.

"Four lifeguards then jumped on their Sea-Doos and were trying to circle the shark or swarm him or her," Rowat said.

The shark swam away before it could be caught.

Lifeguards and marine patrol officers placed red warning flags along the beach Tuesday to let swimmers know that a shark was in the area. But not everyone avoided the water.

"Some people were still going in, but idiots are idiots," Busuttil said.

Shark attacks are uncommon in Mexico.