Rb2d.addForce is changing my y value

I’m trying to make it so i can run and jump at the same time, but for some reason my character lifts up as he runs. IN addition some of my animations are playing delayed.
using UnityEngine;
using System.Collections;

public class playerController : MonoBehaviour {

public int speed = 3;
private Animator playerAnimator;
private float distanceToGround;
private bool isGrounded = true;
private Rigidbody2D rb;
// Use this for initialization
void Start () {
	playerAnimator = GetComponent<Animator>();
	rb = gameObject.GetComponent<Rigidbody2D>();
}

// Update is called once per frame
void Update () {
	//Debug.Log(playerAnimator.Get);
	if(Input.GetKey(KeyCode.D))
	{
		Vector2 move = new Vector2(speed*5, 0);
		Debug.Log("isMoving");
		playerAnimator.SetBool("isMoving", true);
		rb.AddForce(move);
	}
	else if(Input.GetKey(KeyCode.A))
	{
		Vector2 move = new Vector2(-speed*5, 0);
		Debug.Log("isMoving");
		playerAnimator.SetBool("isMoving", true);
		rb.AddForce(move);
	}
	else if(isGrounded && Input.GetKeyDown(KeyCode.Space))
	{
		Vector2 move = new Vector3(0, 300);
		Debug.Log("Jumping");
		playerAnimator.SetBool("isJumping",true);
		gameObject.GetComponent<Rigidbody2D>().AddForce(move);
	}
	else if(!isGrounded && rb.velocity.y < 0)
	{
		Debug.Log("Falling");
		playerAnimator.SetBool("isJumping",false);
		playerAnimator.SetBool("isFalling", true);
	}
	else
	{
		//playerAnimator.SetBool("isJumping",false);
		playerAnimator.SetBool("isFalling", false);
		playerAnimator.SetBool("isMoving", false);
	}

}
void OnCollisionEnter2D(Collision2D other)
{
	Debug.Log("Grounded");
	isGrounded = true;
}
void OnCollisionExit2D(Collision2D other)
{
	Debug.Log("unGrounded");
	isGrounded = false;
}

}

It’s because you are using Vector2 when you should use Vector3. Vector2 is only the X and Y axis and you need to use Vector3 to get the Z Axis

Also I wouldn’t use such a big IF statement with so many Else’s, if I was you I would create functions to do the same things have a look at the link at the bottom, it may help you

Fixed by using void OnCollisionStay instead