better mobile js shit