Inject Javascript into DOM

Inject Javascript into DOM

本文关键字:DOM into Javascript Inject      更新时间:2023-09-26

我正在尝试将一些js动态注入到DOM元素中以执行。 但是,如果我在$(document).ready()注入,则不会评估脚本(但正确注入)。 此外,如果我尝试在 DOM 加载时注入,则容器元素尚不存在。 我已经通过对容器中的脚本标签进行硬编码进行了测试,这很好用。 有没有办法将js注入到DOM元素中,并在DOM就绪或页面加载时对其进行评估?

$(document).ready(function(){
    var container = document.getElementById('container_div');
    var script = document.createElement('script');
    script.type = 'text/javascript';
    script.appendChild(document.createTextNode('[script]'));
    container.appendChild(script);
    //I've also tried .insertBefore and
    //.parentNode.insertBefore and jQuery's .append()
});

我想要实现的目标可能吗?

在纯 javascript 中:

var s = document.createElement('script');
s.setAttribute('src','js/myscript.js');
document.body.appendChild(s);

这是来自jQuerify,我用它来"导入"jquery到任何页面,这样我就可以用firebug破解它,但它应该适用于任何脚本。