【问题标题】:How to have a script tag apply to a certain element, but not others如何让脚本标签适用于某个元素,但不适用于其他元素
【发布时间】:2016-07-27 12:06:25
【问题描述】:

我正在做一个需要两个 angularjs 文件,textAngular-sanitize 和 angular-sanitize 的项目。当这两个文件都加载到页眉或页脚中时,需要首先加载文件的文档部分将起作用,但是需要在第一个文件之后加载的文件的元素停止工作。即,当首先加载 angular-sanitize 时,依赖于 textAngular 的元素停止工作,而如果首先加载 textAangular 文件,则 angular-sanitize 元素停止工作。这可能是因为这两个文件都已加载并在整个文档中运行。有没有办法将其中一个文件的“范围”限制为页面上的一个元素,以便两个脚本都可以运行而不会相互干扰?

或者,除了<script> 标签之外,还有其他加载外部脚本的方法吗?

下面是一个例子:

<head ng-app="myApp">
    <script src="scripts/textAngular.min.js"></script>
    <script src="scripts/angular-sanitize.min.js"></script>
</head>
    <body ng-controller="MainController" ng-init="initialize()">
        <div id="ngSanitizeElement">
            <!-- This element won't work -->
        </div>
        <div id="textAngularSanitizeElement">
            <!-- This element will work -->
        </div>
</body>

【问题讨论】:

  • 这不应该发生,除非两者相互覆盖。你能做个笨蛋吗?

标签: javascript html angularjs frontend


【解决方案1】:

不确定是否理解您的问题,但如果您正在寻找从控制器或路由器加载外部文件的东西,请尝试 ocLazyLoad :https://oclazyload.readme.io/docs

【讨论】:

    【解决方案2】:

    您使用哪个后端? php?然后我会在脚本标签中放入正确文件的值,具体取决于?

    或者你不能使用 2 个不同的 ng-controllers 吗?

    <div ng-controller="textAngular ">
    
    <div ng-controlelr="angular-sanitize">
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-06-30
      • 2020-12-10
      • 1970-01-01
      • 1970-01-01
      • 2022-07-07
      • 1970-01-01
      • 2021-11-24
      相关资源
      最近更新 更多