iOS5系のSafariでtouchstartが動かない場合の対処

iOS5系のSafariでjQueryを使用してDOM構築時にtouchstartイベントにbindしてもtouchstartが検出されない。

以下のコードで試したところiOS4系やAndroidだと検出できるけど、iOS5系だと検出されなかった。

    $(function() {
        $('#content').append(
            $('<div>')
                .addClass('detail1')
                .on('touchstart', function(e) {
                    alert('detail1');
                })
        );

どうしたもんかと色々弄ってたら以下のコードで動いた

    $(function() {
        $('#content').append(
            $('<div>')
                .addClass('detail1')
                .on('touchstart', function(e) {
                    alert('detail1');
                })
        );
        $('#content').on('touchstart', function(e) {
        });
    });

親の要素に何でもいいからtouchstartイベントをbindしてあげるとなぜか動いた。他のtouchmoveとかtouchendとかも同様に動かないみたいで、その場合も親要素に空のイベントをbindしてあげると察知するようになるっぽい。

これはバグなのかなぁ・・・?