【问题标题】:Remove script tag删除脚本标签
【发布时间】:2015-08-06 04:53:29
【问题描述】:
<head>  
    <script type="text/javascript">
        (function(){
            var a=document.createElement("script");
            a.type="text/javascript";
            a.async=!0;
            a.src="http://img.rafomedia.com/zr/js/adrns.js?20150804";
            var b=document.getElementsByTagName("script")[0];
            b.parentNode.insertBefore(a,b);
        })();
    </script>
    <script src="js/twitter.js" type="text/javascript"></script>
</head>

如何使用 javascript 删除第一个脚本?

【问题讨论】:

  • 简单到可以删除它....但问题变成了为什么?删除它不会阻止代码执行。这听起来像X-Y problem
  • 如果我删除了这个脚本,这个问题就解决了。 stackoverflow.com/questions/31839967/…
  • 您误解了删除它不会阻止该脚本中的任何内容运行。当您可以删除它时,浏览器已经处理了它。您需要概述它产生的更高级别的问题并解释它

标签: javascript jquery


【解决方案1】:
document.getElementsByTagName("script")[0].remove()

将删除页面上的第一个脚本标记。

但是,我建议您按照 cmets 的建议进行详细说明,因为它可能无法解决您要解决的问题。

【讨论】:

    【解决方案2】:

    查看该脚本,它还使用了与 jQuery $ 冲突的 $ 别名,因此使用 jQuery.noConflict() 可以简单地解决您的问题

    在页面中加载 jQuery.js 后立即添加此标签:

    <script>jQuery.noConflict()</script>
    

    然后使用以下方法包装任何 jQuery 代码:

    (function($){
      // your jQuery code
    
    })(jQuery);
    

    或者将您的就绪事件处理程序替换为:

    jQuery(document).ready($){/* your code */});
    

    jQuery(function($){/* your code */ });
    

    参考:jQuery.noConflict() docs

    【讨论】:

      猜你喜欢
      • 2017-02-09
      • 2010-11-27
      • 1970-01-01
      • 2017-02-27
      • 1970-01-01
      • 2022-10-24
      • 2016-01-30
      • 1970-01-01
      • 2014-10-02
      相关资源
      最近更新 更多