首页 > 解决方案 > 用 JS 隐藏/显示内容的替代方法?

问题描述

有没有更好的方法来通过简单地折叠/切换 div 并显示/隐藏其内容来替换这种 js 函数?

$(function() {
           $('#destselect').change(function(){
                $('.dest').hide();
                $('#' + $(this).val()).show();
           });
      });

标签: javascripthtml

解决方案


发生这种情况的原因是因为您的 js 文件是在页面头部调用的。

正因为如此,当你document.getElementsByClassName('collapsible');colls导致一个空数组,因为你在 body 中的元素还没有创建。

您可以创建一个单独的 js 文件并将其添加到正文的末尾(这样您可以确保在执行 javascript 时创建您的 colls),或者只是将您的代码包装在DOMContentLoaded将触发您的代码一次的事件侦听器上文档已完全加载。


推荐阅读