You set Joint Precedence to control the order in which joint calculations are applied to the kinematic chain. When an IK solution is calculated, the result is dependent on the order of calculation for each joint.
The hoof (a child) has precedence over the leg (its parent).
For any given position of an end effector, there are many possible IK solutions.
The three joint precedence controls in the Object Parameters rollout are:
Precedence: Sets joint precedence manually.
Child->Parent: Automatically sets joint precedence to decrease in value from child to parent.
Parent->Child: Automatically sets joint precedence to decrease in value from parent to child.
You control the IK solution by setting joint precedence to determine which joints contribute the most to the IK solution and which joints contribute the least.
Joints with high precedence values are calculated first, and contribute more motion to the IK solution.
Joints with low precedence values are calculated last and contribute the least motion to the IK solution.
Joints with equal precedence values are calculated by order in the hierarchy. Joints closer to the end effector are calculated first and joints closer to the root are calculated last.
Of all of the joint parameters, Joint Precedence is the most subtle.
See also
Using Default Joint Precedence
Choosing Child-to-Parent Precedence