event not fired on xxx(val), if value already same