更改 body innerHTML 的正确方法

Proper way to change body innerHTML

我正在脑子里做一些 jQuery 事情。在文件末尾,我像这样更改 body innerHTML:

document.getElementsByTagName('body')[0].innerHTML='<div>some string</div><div>some string</div><div>some string</div>'+document.getElementsByTagName('body')[0].innerHTML;

这样做之后,元素将被添加到正文中,但 jquery 或 javascript 函数的 none 起作用。你知道为什么以及如何解决它吗?

注意:如果"it is possible"我更喜欢用上面的方法给body添加元素

这就是我在头脑中所做的(它是 datatables.net),例如在更改 innerHTML 之后在这段代码中 $('#search').keyup 将无法工作......

   <script type='text/javascript'>
        //<![CDATA[
        $(window).load(function() {
            $(document).ready(function() {

                oTable = $('#example').DataTable({
                    "iDisplayLength": 10,
                    "aaSorting": [
                        [1, 'asc']
                    ],

                    responsive: true
                });
                $('#search').keyup(function() {
                    oTable.search($(this).val()).draw();

                })

            });
        }); //]]>
    </script>

编辑:问题已解决!

对于动态添加的对象,您将无法简单地执行以下操作:

$("#object").click(function(){

});

但是,您需要使用:

$(document).on("click", "#object", function(){

});

这样就可以触发动态添加对象了

我最后做了两处修改来完成这项工作: 1 将所有脚本放在文件末尾附近 2 更改body innerHTML后执行所有准备代码。