【问题标题】:How can I get $.getScript to work correctly?如何让 $.getScript 正常工作?
【发布时间】:2012-01-26 23:01:09
【问题描述】:

我可以看到 jquery 的 $.getScript 位在它工作后会很方便,但这是我遇到问题的最后一点。我怀疑这个问题是由我加载 JS 文件的方式引起的。我怎样才能让它工作?我的 index.html 实际上是 index.php 并且在正文标记之间几乎没有。我正在使用 jquery 1.7.1

<body id="btLive">
     <script>
          buildInterfaces();
     </script>
</body>

buildInterfaces() 位于名为 layoutLoader.js 的文档中。在该文件中,我有以下内容:

$(document).ready(function() {
     $('#hToggle').click(function() {
          aaa = "Not working.";
          $.getScript('test.js', function() {
               alert(aaa);
          });
          toggleHoverPanel();
     });
});

作为我的测试,test.js 与 layoutLoader.js 位于同一文件夹中,并且仅包含以下内容:

aaa = "Successful Load."

当我点击按钮 hToggle 时,toggleHoverPanel 发生并且我没有收到任何警报。如果我在 aaa="Not working." 之后发出警报;我收到了我期望的警报,告诉我它不起作用。我有许多需要使用它的项目,但对于我的生活,我无法让它工作。帮忙?

【问题讨论】:

    标签: php javascript jquery getscript


    【解决方案1】:

    很有可能找不到 test.js 文件。 将此部分添加到您的代码中,然后重试:

    $(document).ajaxError(function(event, request, settings){
      alert('error loading: ' + request.status);
    });
    

    【讨论】:

    • 啊哈。做到了。看起来在加载这样的其他脚本时,我需要确保指定相对于我的 index.php 文件的路径,而不是假设该文件与我的其他脚本位于同一文件夹中。
    • @Charles Shoults 当然,它总是与页面相关,或者如果设置了 BASE 标记的值:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-05-08
    • 2020-08-27
    • 2018-06-11
    • 2016-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多