【问题标题】:How to append a <script> to <body> using jQuery?如何使用 jQuery 将 <script> 附加到 <body>?
【发布时间】:2014-07-02 16:29:58
【问题描述】:

我在 StackOverflow 上阅读了大约 8 个关于同一问题的不同问题。我尝试了几种不同的方法,其中大部分涉及创建脚本元素,然后向其添加属性,最终由joinappend()appendTodocument.body.appendChild 等完成。

我无法在&lt;/body&gt; 之前显示此脚本标记。

脚本我需要附加到&lt;body&gt;:

<script src="http://ib.adnxs.com/seg?add=1448379&t=1" type="text/javascript"></script>

这是我需要添加到由 CMS 生成的网站的一些营销像素。根据document.location.pathname,它只能显示在一个页面上。

【问题讨论】:

    标签: javascript jquery append document-body


    【解决方案1】:

    你试过了吗?

    $("body").append($("<script>", {  src : "http://ib.adnxs.com/seg?add=1448379&t=1",  type : "text/javascript" }))
    

    【讨论】:

    • 傻问题,你导入jquery了吗?
    • 是的。使用 CMS。该页面已生成,因此我必须使用 jQuery 等注入新内容。所有的核心内容,比如 jquery 和库,都内置在 CMS 中,并且全部都内置在其中。
    • 无框架或 iframe。在多次失败后,我不得不咨询构建 CMS 的后端工程师。他们制定了一个解决方案,涉及调整该站点的 CMS 模板。不过,非常感谢您提供帮助。
    【解决方案2】:

    我想这会对你有所帮助

    $("<script"+ " src"+"\="+ "http:\//ib.adnxs.com\/seg\?add=1448379&t=1"+" type"+"="+"text\/javascript"+"></script>").appendTo($("body"));
    

    添加 \ 以转义特殊字符

    appendTo() 将在正文标记结束之前追加

    控制台

    HTML

    【讨论】:

    • 在 Chrome 开发工具控制台中使用它给了我 'Uncaught SyntaxError: Unexpected token ILLEGAL'。
    • 您是否正确复制。因为在我看来它工作正常。我会贴一张它的图片
    • 不要尝试使用 jsfiddle,因为它不允许任何脚本标签。做一个我最近在 jquery.com 上测试过的。工作正常。只需在该站点上打开控制台并运行即可。它不会造成问题
    猜你喜欢
    • 2012-02-25
    • 2014-05-21
    • 1970-01-01
    • 1970-01-01
    • 2019-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多