javascript - 在通用菜单加载完成之前不要继续

标签 javascript jquery html

我有一个通用菜单,我将其包含在我的所有 HTML 中。某些菜单项默认设置为“禁用”,因为它们只能从某些页面访问。当显示允许的页面之一时,我删除禁用的类。有时,禁用的类不会被删除,用户会看到一个带有一条线的红色圆圈。我尝试过“holdReady”和“(window).load”,但它们不起作用。

如果我在删除该类之前发出警报,它就会起作用。

代码是:

//$.holdReady( true );
////Include the menu before the document is ready.
//$("#includedContent").load("Menu.html");
//$.holdReady( false );

$(document).ready(function(){
    //Include the menu before the document is ready.
    $("#includedContent").load("Menu.html");    
});

//$(window).load(function(){

$(document).ready(function(){

    //Allow these items to be selected when a youth member is displayed 
    $("li").removeClass("disabled");

最佳答案

.load() 签名有一个回调函数。在这种情况下,$.holdReady() 是不必要的。您可以将jQuery(selector.context)context设置为调用.load()的元素,即this .load() 回调函数中,仅选择 "li" ,这些元素是具有 id “includedContent”的元素的子元素`

$(function() {
  $("#includedContent").load("Menu.html", function() {
    // do stuff
    $("li", this).removeClass("disabled");
  });    
});

关于javascript - 在通用菜单加载完成之前不要继续,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54840086/

相关文章:

javascript - 获取重复 GET 变量的查询字符串值

javascript - 属性更改后 JQuery 函数仍在运行

jquery - 是否可以使用 'div id' 作为数组名称?

jquery - 如何在 jquery 中使用选项卡?

javascript - 从异步操作创建者返回有效负载 - React js

javascript - 如何在 vue.js 中根据父级选择 json 项目

javascript - OnSubtreeModified 添加我的功能

javascript - 展开所选元素 Javascript 或 Jquery

javascript - 在文本输入字段上模拟退格键

html - 如果容器枯萎,则将图像居中对齐