„undefined” nie jest funkcją oceniającą el.click () w Safari

Chciałbym uruchomić funkcję js po naciśnięciu przycisku Enter. Wszystko działa świetnie w IE, Chrome i Operze, ale pojawia się błąd (wyjaśniony poniżej) w Safari.

Potrzebujęczysty Javascript rozwiązanie,nie jQuery.

To jestfunkcjonować:

function pressSearch(e) {
    if (typeof e == 'undefined' && window.event) {
        e = window.event;
    }
    var charCode = (e.which) ? e.which : 
                   ((e.charCode) ? e.charCode : 
                   ((e.keyCode) ? e.keyCode : 0));
    if (charCode == 13) {
        document.getElementById('enterSearch').click();
    }
}

To jestHTML:

<input type="text" id="searchKey" onkeypress="pressSearch(event)">
<div id="enterSearch">Search</div> // This is the "button"

rozumiembłąd:

// Safari
TypeError: 'undefined' is not a function 
    (evaluating 'getElementById('enterSearch').click()')

Co ja robię źle?

EDYTOWAĆ: Naprawiłem błąd Mozilla Firefox.

questionAnswers(5)

yourAnswerToTheQuestion