Я пока не могу ответить на вышеупомянутый разговор, потому что я новичок здесь, но я просто хотел сказать, что вам не нужно return false
от этой функции. Это предотвращает поведение события по умолчанию (что в случае нажатия div
- ничто) и предотвращает распространение события до следующего элемента в иерархии DOM.
Вряд ли что-то из этого необходимо для этого случая. Кроме того, если вам действительно нужно это поведение, вы можете получить его отдельно и более четко так:
// note that the function will be passed an event object as
// its first argument.
$('#example').click(function(event) {
event.preventDefault(); // the first effect
event.stopPropagation(); // the second
window.location.href = $('a', this).attr('href');
});
Опять же, я не думаю, что какой-либо подход необходим в этом случае, но важно понимать, как они работают, потому что вам понадобится один или оба из них часто.