是否有一种方法,不让隐藏菜单中的所有元素加载页面启动

Is there a way to not have all the elements in a hide menu load on page startup?

本文关键字:元素 启动 隐藏菜单 加载 一种 是否 方法      更新时间:2023-09-26

我有一个有一堆下拉菜单的页面,当你点击其中一个链接时,它会隐藏一张图片和一些文本。在页面启动时加载所有这些隐藏元素会大大降低页面速度。是否有一种方法可以使下拉菜单中的内容仅在未隐藏时加载(当下拉菜单被单击并显示图像/文本时)。

提前感谢您的帮助!

你可以使用$(element).append(content)从JS中添加它。

添加doc: http://api.jquery.com/append/

如果您选择AJAX解决方案,那么关闭Javascript的用户将根本无法看到菜单,从而使站点变得非常无用。解决这个问题的一种方法是将菜单的代码放在DOM中的内容之后,要记住,在这种反向布局下,需要特别注意使可访问性功能像"正常"一样工作。

另一个选择是使用AJAX加载菜单,然后有选择地将其保存在浏览器的离线存储中,以便在未来的页面上更快地加载。在<noscript>标签中呈现一个非常基本的菜单,并为您的非javascript朋友提供一个完整的站点地图链接。

下面是一个使用AJAX的基本示例:
$.ajax({
  url: "menu.html"
})
  .done(function( html ) {
    $( "#menu" ).append( html );
  });