Mecanim - transition from run to jump

I’m trying to have the character transition from run to jump when the jump button is pressed but it often doesn’t transition to the jump animation. It instead continues to play the run animation while in the air.

If anyone can tell me why this is happening that would be great or if there is a better way of doing this.

This is the whole Layer


This is the transition from run to jump


I was checking this way

       bool grounded = CM.IsGrounded;
		anim.SetBool("isGrounded", grounded);
			anim.SetBool("Jump", false);
		anim.SetBool("Falling", CM.Falling);
			anim.SetBool("Jump", false);

I changed it to this

     if (currentBaseState.tagHash == jumpState)
				anim.SetBool("Jump", false);	

It now works 100% of the time but will sometimes play the run animation in the air for a few fractions of a second.

Is there a way to transition from one animation to another from any point in the animation?

i.e. if I jump at 0.1 sec into the run animation or at 0.25 sec into the animation I will get the same results.