3

(这个问题是 Bootstrap Studio 特有的)

我需要包含一段特定于一个页面的 JS。

  • 我不能把它放在一个 JS 文件中,因为它特定于一个页面,而且 BSS 显然没有将 JS 文件链接到单个页面的选项。它总是导入所有页面中的所有 JS 文件(我认为这本身就是一个严重的限制)。
  • 我不能把它放在页面的自定义代码块中,因为它使用 jQuery,它是在 BSS 的整个页面内容(包括 )之后加载的,因此当我的脚本运行时我jQuery.js看到$ is not defined错误。

我的出路是什么?

4

2 回答 2

3

你有 :

  • 1)等待jQuery被加载,你可以用这样的代码做到这一点:

    $( document ).ready(function() {
      // Handler for .ready() called.
      if (window.location.pathname == '/mypage.php') {
        // execute my custom code
      }
    });
    

或者

    var waitForJQuery = setInterval(function () {
    if (typeof $ != 'undefined') {    
        // place your code here.
        if (window.location.pathname == '/mypage.php') {
          // execute my custom code
        }

       clearInterval(waitForJQuery);
        }
    }, 50);
  • 2)如果您只想在自定义页面上执行代码,您可以检查您在哪个页面上,如果您在好页面上,则执行您的自定义代码

    if (window.location.pathname == '/mypage.php') {
      // execute my custom code
    }
    

    在此处查看更多可能性:仅在特定页面上执行 js 的最佳方式

于 2018-07-11T19:07:36.173 回答
0

您可以轻松地右键单击 js 文件。在下拉列表中,您可以选择“可见性”,然后选择要使用 js 文件的所有 html 页面。

于 2022-01-22T19:06:17.030 回答