【问题标题】:JS not applied for dynamically generated HTMLJS不适用于动态生成的HTML
【发布时间】:2013-02-07 19:10:43
【问题描述】:

我正在使用 www.redips.net/ 拖放对象,它与 jquery 相同,但问题是如果我将所有内容都作为静态 HTML,那么它工作正常。如果我动态生成 HTML(这是必须的)然后一个的 js 库 redips-drag-min 无法应用 & 拖放不起作用。

我找到了一种解决方案,可以在像这样创建所有 HTML 之后动态添加对该 js 的引用

        var ssioCss = document.createElement("script");
        ssioCss.setAttribute("type", "text/javascript");
        ssioCss.setAttribute("src", "../redips-drag-min.js");
        document.head.appendChild(ssioCss);

其中一个 css 文件以这种方式工作,而且非常棒,但为什么没有 JS 文件可以帮助任何人? 谢谢

【问题讨论】:

  • 你给出的相对路径是否正确?您在萤火虫中看到任何错误吗?签入网络标签...

标签: javascript jquery html dynamic-html redips.drag


【解决方案1】:

当您在标签中指定 JQuery 时,您应该使用

  1. append, or before or after 方法在您的页面中创建元素
  2. getScript 加载你的脚本
  3. 使用此脚本加载外部 CSS 文件

    $("<link/>", {
      rel: "stylesheet",
      type: "text/css",
      href: "/styles/yourcss.css"
    }).appendTo("head");
    

【讨论】:

    【解决方案2】:

    您可以使用.getScript()动态加载外部js:

    $.getScript("../redips-drag-min.js", function(data, textStatus, jqxhr) {
       console.log(data);
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多