use target instead of currentTarget