niepewny co do metody .on ()

Używałem$.click() metoda wyzwalania niektórych zdarzeń. Ale potem musiałem ustawić pewne zdarzenia dla niektórych elementów HTML, zanim elementy zostały zadeklarowane. Weźmy to jako przykład:

<script>
    $('div.hide').click(function() {
        $('div.hide').css({'display' : 'none'});
     });
</script>
<div class="hide">some text</div>

Minusem jest to, że podczas ustawiania.click() metoda,div.hide elementy nie istnieją, więc nie ustawiono żadnego wyzwalacza.

Więc zwróciłem się do.on() metoda, tak:

<script>
    $('div.hide').on('click', function() {
        $('div.hide').css({'display' : 'none'});
    });
</script>
<div class="hide">some text</div>

Ale to również nie działa. Myślałem, że dzwonię.on() uczyniłoby wszystko istnieniem i przyszłościądiv.hide elementy wyzwalają'click' function().

Udało mi się ominąć tę niedogodność, ale dla własnej wiedzy chciałbym wiedzieć, co robię źle. Czy nie można przypisać wyzwalacza do przyszłych elementów HTML?

Moja decyzja była:

<script>
    $(document).ready( function() {
        $('div.hide').click(function() {
            $('div.hide').css({'display' : 'none'});
        });
    });
</script>
<div class="hide">some text</div>

questionAnswers(2)

yourAnswerToTheQuestion